Считать caption кнопки зная handle - C#
Формулировка задачи:
Здравствуйте.
Как можно считать caption статус бара или другого любого объекта зная handle
Есть такой код, но он только для форм(?)
Листинг программы
- public static string GetCaptionOfWindow(IntPtr hwnd)
- {
- string caption = "";
- StringBuilder windowText = null;
- try
- {
- int max_length = GetWindowTextLength(hwnd);
- windowText = new StringBuilder("", max_length + 5);
- GetWindowText(hwnd, windowText, max_length + 2);
- if (!String.IsNullOrEmpty(windowText.ToString()) && !String.IsNullOrWhiteSpace(windowText.ToString()))
- caption = windowText.ToString();
- }
- catch (Exception ex)
- {
- caption = ex.Message;
- }
- finally
- {
- windowText = null;
- }
- return caption;
- }
Решение задачи: «Считать caption кнопки зная handle»
textual
Листинг программы
- [DllImport("user32.dll", EntryPoint = "SendMessage",CharSet = CharSet.Auto)]
- static extern int sm(IntPtr hwndControl, uint Msg,int wParam, StringBuilder strBuffer);
- [DllImport("user32.dll", EntryPoint = "SendMessage",CharSet = CharSet.Auto)]
- static extern int smm(IntPtr hwndControl, uint Msg,int wParam, int lParam);
- static int GetTextBoxTextLength(IntPtr hTextBox)
- {
- uint WM_GETTEXTLENGTH = 0x000E;
- int result = smm(hTextBox, WM_GETTEXTLENGTH,
- 0, 0);
- return result;
- }
- static string GetTextBoxText(IntPtr hTextBox)
- {
- uint WM_GETTEXT = 0x000D;
- int len = GetTextBoxTextLength(hTextBox);
- if (len <= 0) return null;
- StringBuilder sb = new StringBuilder(len + 1);
- sm(hTextBox, WM_GETTEXT, len + 1, sb);
- return sb.ToString();
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д