WinCE: Добавление Menu(commandbar) в Dialog

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

WinCE: Добавление Menu(commandbar) в Dialog

Сообщение Bohdan » 23.03.2007 20:49:05

Пишу пргу на WinApi. Очень хочу всунуть CommandBar внизу экрана в свой диалог.
День просидел над этим вопросом, но ничего путного не получилось :(
Примеры, как назло под MFC заточены.

Если делать так:

WM_INITDIALOG:begin
CBar := CommandBar_Create( hInstance, wnd, 0) ;
CommandBar_InsertMenubarEx(CBar,hInstance,IDR_MENU,0) ;
end;

то в принципе менюшка получаеться, но только вверху диалога и не на всех версиях WinCe пашет :cry:

Пробую сделать так:
function CreateMenuBar(wnd:HWND):HWND;
var
mbi:SHMENUBARINFO;
begin
fillChar(mbi,sizeof(mbi),0);
mbi.cbSize := sizeof(mbi); // Size field
mbi.hwndParent := wnd; // Parent window
mbi.dwFlags := 0; // Flag ?(SHCMBF_EMPTYBAR,SHCMBF_HIDDEN,SHCMBF_HIDESIPBUTTON)
mbi.nToolBarId := IDR_MENU;//idToolbar; // ID of toolbar resource
mbi.hInstRes := hInstance; // Inst handle of app
mbi.nBmpId := 0;//idBitMapToolbar; // ID of bitmap resource
mbi.cBmpImages := 0;//iImages; // Num of images in bitmap
if not SHCreateMenuBar(@mbi) then
MessageBox(wnd,PWideChar('Error'),0,MB_OK);
result:= mbi.hwndMB; //handle of Menu
end;
....
WM_CREATE:СBar:=CreateMenuBar(wnd);

Ошибка не выскакиет но и Меню тоже не появляется :(
Ресурс менюшки выглядит так
#define IDR_MENU 10000
#define IDM_start 10002
#define IDM_Exit 10001
IDR_MENU MENU
BEGIN
POPUP "File"
BEGIN
MENUITEM "Open", IDM_start
MENUITEM SEPARATOR
MENUITEM "Exit", IDM_Exit
END
END

PS: Может по WindowsCE отдельный раздел открыть :idea:
Bohdan
новенький
 
Сообщения: 87
Зарегистрирован: 11.05.2005 11:31:46
Откуда: Ukraine, Kyiv

Сообщение Bohdan » 24.03.2007 14:52:06

Все получилось, в KOL подглядел :)
mbi.dwFlags :=SHCMBF_HMENU
почему то нужно ставить, хотя в с++ такого нету :)
Bohdan
новенький
 
Сообщения: 87
Зарегистрирован: 11.05.2005 11:31:46
Откуда: Ukraine, Kyiv


Вернуться в Free Pascal Compiler

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6

Рейтинг@Mail.ru