Как создать кнопку с многострочным текстом
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) |
SYSDBA (обсуждение | вклад) |
||
| (не показана 1 промежуточная версия 1 участника) | |||
| Строка 1: | Строка 1: | ||
| − | Для вывода заголовка кнопки в несколько строк необходимо изменить ее стиль. Ниже приведен код обработчика события '''OnSetupDialog''', который меняет стиль кнопки с именем '''usrg_Button1''' и присваивает ей заголовок из двух строк. | + | Для вывода заголовка кнопки в несколько строк необходимо изменить ее стиль с помощью функции '''SetWindowLong'''. Ниже приведен код обработчика события '''OnSetupDialog''', который меняет стиль кнопки с именем '''usrg_Button1''' и присваивает ей заголовок из двух строк. |
<syntaxhighlight lang="vbnet"> | <syntaxhighlight lang="vbnet"> | ||
| Строка 27: | Строка 27: | ||
* [http://msdn.microsoft.com/en-us/library/windows/desktop/ms633584%28v=vs.85%29.aspx GetWindowLong] | * [http://msdn.microsoft.com/en-us/library/windows/desktop/ms633584%28v=vs.85%29.aspx GetWindowLong] | ||
* [http://msdn.microsoft.com/en-us/library/windows/desktop/ms633591%28v=vs.85%29.aspx SetWindowLong] | * [http://msdn.microsoft.com/en-us/library/windows/desktop/ms633591%28v=vs.85%29.aspx SetWindowLong] | ||
| + | * [http://delphi.about.com/cs/adptips2001/a/bltip0701_2.htm TButton with multiline Caption] | ||
[[Category:Вопросы и ответы (для разработчика)]] | [[Category:Вопросы и ответы (для разработчика)]] | ||
[[Category:WinAPI]] | [[Category:WinAPI]] | ||
[[Category:Руководство разработчика]] | [[Category:Руководство разработчика]] | ||
Текущая версия на 17:22, 10 февраля 2012
Для вывода заголовка кнопки в несколько строк необходимо изменить ее стиль с помощью функции SetWindowLong. Ниже приведен код обработчика события OnSetupDialog, который меняет стиль кнопки с именем usrg_Button1 и присваивает ей заголовок из двух строк.
Option Explicit Sub ...OnSetupDialog(ByVal Sender) '*** Данный код необходим для вызова встроенного обработчика *** '*** В случае его удаления возможно нарушение работы системы *** call Inherited(Sender, "OnSetupDialog", Array(Sender)) '*** конец кода поддержки встроенного обработчика *** Const GWL_STYLE = -16 Const BS_MULTILINE = 8192 Dim btn Set btn = Sender.GetComponent("usrg_Button1") WinAPI.SetWindowLong btn.Handle, GWL_STYLE, _ WinAPI.GetWindowLong(btn.Handle, GWL_STYLE) OR BS_MULTILINE btn.Caption = "Line1" & vbCrLf & "Line2" End Sub