CreateWindowEx problem
BlitzPlus Forums/BlitzPlus Programming/CreateWindowEx problem
| ||
Anyone see what I’m doing wrong using CreateWindowEx with B+? This just crashes but ‘should’ create a listbox. Thanks a lot. ; .lib "User32.dll" ; api_CreateWindowEx% (dwExStyle%, lpClassName$, lpWindowName$, dwStyle%, x%, y%, nWidth%, nHeight%, hWndParent%, hMenu%, hInstance%, lpParam*) : "CreateWindowExA" ; api_GetActiveWindow% () : "GetActiveWindow" AppTitle "test" Const dwExStyle = 512 Const hMenu = 0;3 WS_CHILD = 16384 Shl 16 WS_GROUP = 2 Shl 16 WS_TABSTOP = 1 Shl 16 WS_VISIBLE = 4096 Shl 16 WS_VSCROLL = 32 Shl 16 LBS_USETABSTOPS = 128 xdwStyle = WS_CHILD Or WS_VISIBLE; Or WS_VSCROLL dwStyle = xdwStyle win=CreateWindow ("Win",10,10,800,600,main,11) hWnd = api_GetActiveWindow() api_CreateWindowEx (dwExStyle,"ListBox","test",dwStyle,10,10,200,200,hWnd,hMenu,0,0) While WaitEvent(10)<>$803 Wend End |
| ||
Hi Cold Harbour, your passing a bank on the lparam of createwindowex without creating one. also hInstance requires an handle to the module thats calling createwindowex.; decls ; .lib "kernel32.dll" kernel32_GetModuleHandle%(lpModuleName%):"GetModuleHandleA" .lib "user32.dll" api_CreateWindowEx% (dwExStyle%, lpClassName$, lpWindowName$, dwStyle%, x%, y%, nWidth%, nHeight%, hWndParent%, hMenu%, hInstance%, lpParam%) : "CreateWindowExA" api_GetActiveWindow% () : "GetActiveWindow" ; example ; AppTitle "test" Const dwExStyle = 512 Const WS_CHILD = $40000000 Const WS_VISIBLE = $10000000 win = CreateWindow ("Win",10,10,800,600,0,11) hWnd = QueryObject(win,1);api_GetActiveWindow() listbox = api_CreateWindowEx(dwExStyle,"LISTBOX","test",WS_CHILD Or WS_VISIBLE,10,10,200,200,hWnd,0,kernel32_GetModuleHandle(0),0) Repeat If WaitEvent()=$803 Then Exit Forever End kev |
| ||
Thanks a lot Kev! :) |