Недавно я обратил внимание на то, что одно из наших приложений неправильно рисует в нетематической Windows.
Панель инструментов построена из TSpeedButtons, вложенных в TToolbar, который, в свою очередь, находится внутри элемента управления страницы.
На тематической винде все выглядит красиво. Ну, не красиво, но ладно.
Однако в нетематических Windows внутри кнопок появляются странные вертикальные линии.
Я искал вокруг, но не могу найти ни одного сообщения о такой проблеме. (Скорее всего, просто мой поиск кунг-фу отстой.) Кто-нибудь знает описание этой проблемы или, что еще лучше, решение?
Flat
панели инструментов установлено значениеTrue
. Случается с любым не оконным потомкомTGraphicControl
. - person Ondrej Kelle   schedule 20.07.2011CDRF_DODEFAULT
наCDRF_SKIPDEFAULT
вNM_CUSTOMDRAW
при обработке вTToolBar.CNNotify
. Но, вероятно, это сложнее, вам нужно исследовать все возможные комбинации с пользовательским рисунком и темами. - person Ondrej Kelle   schedule 20.07.2011TSpeedButton
; это влияет на все (не оконные) графические элементы управления. - person Ondrej Kelle   schedule 20.07.2011TSpeedButton
, вот и все. - person Ondrej Kelle   schedule 20.07.2011TToolBar.UpdateItem
включаетTBSTYLE_SEP
вfStyle
для сообщенияTB_INSERTBUTTON
. Кажется, это место, где проходит вертикальная линия. Однако я понятия не имею, как работают панели инструментов! - person David Heffernan   schedule 20.07.2011TB_INSERTBUTTON
не применяется, если вы не используетеTToolButtons
. ДляTSpeedButton
такого сообщения не создано. ;) - person Ken White   schedule 21.07.2011