Author | Message | Time |
---|---|---|
JJBot | Hello, After figuring out how to add a WndProc to a seperate class and handle a window I've come across a problem: In my main.cpp file I load a window with classname "PokerMain" and then create a class of type CardTable. When CardTable is initialized it is supposed to load a window of classname "PokerTable" but does not appear - that is, unless I change the window so that it's parent is HWND_DESKTOP rather than identifying PokerMain's hwnd as it's parent, then it appears after the PokerMain window is closed. However, when using PokerMain's hwnd as the parent and loading the application I close PokerMain's window yet the program is not terminated. So the PokerTable window is loaded but not visible? Heres what I have in main.cpp (PokerMain) [code] hwndMain = CreateWindowEx (0, szClassName, "Poker Main", (WS_CLIPCHILDREN | WS_OVERLAPPEDWINDOW) & 0xFFFEFFFF, CW_USEDEFAULT, CW_USEDEFAULT, 800, 600, HWND_DESKTOP, 0, hThisInstance, NULL); ShowWindow(hwndMain, 1); CardTable cd("pokerbgd.dat", 800, 600, hwndMain); [/code] And what I have in the CardTable class initialization: [code] CardTable::CardTable(char* sBackground, int width, int height, HWND hWndParent){ HINSTANCE hInst = GetModuleHandle(NULL); char szClassName[] = "PokerTable"; WND_WIDTH = width; WND_HEIGHT = height; hMemDC = 0; origDC = 0; hBackground = LoadBitmapFile(sBackground); cm.gDeck = cm.createDeck(); hRichEdit = LoadLibrary("RICHED32.DLL"); RegisterWindowClass(szClassName, hInst); hWnd = CreateWindowEx (0, szClassName, "John's Poker Table", (WS_CLIPCHILDREN | WS_OVERLAPPEDWINDOW) & 0xFFFEFFFF, CW_USEDEFAULT, CW_USEDEFAULT, WND_WIDTH, WND_HEIGHT, hWndParent, 0, hInst, this); ShowWindow (hWnd, 1); <more code here> } [/code] Also it seems that if I create 2 CardTable classes after the PokerMain window closes both of them will appear. Yet why can't they appear while the PokerMain window is open? What am I doing wrong? Any help is greatly appreciated. Thanks! | July 24, 2006, 4:25 AM |