Как создать кнопку с многострочным текстом
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) (Новая страница: « <syntaxhighlight lang="vbnet"> Option Explicit Sub ...OnSetupDialog(ByVal Sender) '*** Данный код необходим для вызова встроен…») |
SYSDBA (обсуждение | вклад) |
||
| Строка 1: | Строка 1: | ||
| − | + | Для вывода заголовка кнопки в несколько строк необходимо изменить ее стиль. Ниже приведен код обработчика события '''OnSetupDialog''', который меняет стиль кнопки с именем '''usrg_Button1''' и присваивает ей заголовок из двух строк. | |
<syntaxhighlight lang="vbnet"> | <syntaxhighlight lang="vbnet"> | ||
| Строка 25: | Строка 25: | ||
====См. также==== | ====См. также==== | ||
{{EmbarcaderoWiki_Template|page_list=TButton}} | {{EmbarcaderoWiki_Template|page_list=TButton}} | ||
| + | * [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] | ||
[[Category:Вопросы и ответы (для разработчика)]] | [[Category:Вопросы и ответы (для разработчика)]] | ||
[[Category:WinAPI]] | [[Category:WinAPI]] | ||
[[Category:Руководство разработчика]] | [[Category:Руководство разработчика]] | ||
Версия 17:20, 10 февраля 2012
Для вывода заголовка кнопки в несколько строк необходимо изменить ее стиль. Ниже приведен код обработчика события 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