Считать 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();
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы