Привет! Как работать с этим типом кнопок? Ни одного примера на ассемблере в сети не нашел. Вот что пока смог приготовить: Код (ASM): wm_initdialog: .data BCSIF_STYLE =0x0004 BCSIF_SIZE =0x0008 BCSS_NOSPLIT =0x0001 struc BUTTON_SPLITINFO mask,hGlyph,Style,cx,cy { .mask dw mask .hGlyph dq hGlyph .Style dw Style .cx dq cx .cy dq cy } SplitInfo BUTTON_SPLITINFO BCSIF_STYLE,0,0,0,0 BCM_SETSPLITINFO =0x1607 BCM_GETSPLITINFO =0x1608 .code invoke GetDlgItem,[hWnd],IDC_B_Load invoke SendMessage,eax,BCM_SETSPLITINFO,0,SplitInfo Но вот hGlyph хочет ссылаться на список изображений, тогда как мне нужно вставить обычный тестовый список, либо дочернее окно, в котором я такой список сам накатаю. Весь функционал по таким кнопкам заточен на работу с методами под класс CButton, а как с ним работать, без примеров, я не понимаю, всё покрыто мраком. Где вообще брать описания структур и констант? Я данный кусок кода по крупицам собирал, а CButton -- вообще темный лес. Ещё есть интерфейсы IImageList с которыми вроде как проще, но GUID ключи под них я не нашел. Помогите разобраться, желательно на примерах.
Насколько я могу судить, при клике в такой батон WM_NOTIFY с BCN_DROPDOWN должно приходить, а тебе надо PopupMenu нарисовать по этому событию. Без всяких там. Так что не сношал бы ты мозг, а рисовал на кнопке характерную иконку с текстом (или из двух кнопок соорудил, как это обычно делается) и выкидывал это меню при нажатии на нее, без самого этого стиля. Опять же совместимость с Windows XP SP2 будет.
Я хочу разобраться именно с этим стилем. BUTTON_SPLITINFO и должно ссылаться на такое PopupMenu, вот его то мне и нужно правильно оформить.
Не должно. https://docs.microsoft.com/ru-ru/windows/win32/api/commctrl/ns-commctrl-button_splitinfo Посмотри внимательно на поля и маски: BCSIF_GLYPH BCSIF_IMAGE BCSIF_SIZE BCSIF_STYLE Туда только ImageList, стиль и размер можно напатронить. У майкрософт не бывает скрытых способов что-то куда-то засунуть, если не предусмотрено. Зато есть вот такая статья про Split Buttons https://docs.microsoft.com/en-us/wi...bcn-dropdown-notification-from-a-split-button