Hello,
I am working on a program and need it so that when you click a button it will bring up a different container that holds static controls/buttons/etc...
For instance, a person clicks Button A so it makes frame A visible and sets other frames to invisible. The person clicks Button B then it makes frame B visible and so on.
I am currently using a static control as my frame, in which I make buttons/other statics child windows of the static control so I only have to set 1 window to visible/not visible rather than the whole group of windows.
The problem is now how do I set the background color/font of the child windows in the static "frame"? I tried using WM_SETFONT but it only works for windows that are childs of the main window.
So basically the structure is like this:
Main Window ----> Child of Main Window: Frame -----> Child of Frame Window: Label 1
Label 1's backcolor/font won't change but if I make Label 1 a child of Main window it will. But that defeats the whole purpose of having a frame control the visibility of all the other windows in it.
Heres a sample of my code:
Should I be using another method to group the windows? Help is greatly appreciated. Thanks.
Edit: Nvm, problem resolved. Figured out that I had to subclass it.
I am working on a program and need it so that when you click a button it will bring up a different container that holds static controls/buttons/etc...
For instance, a person clicks Button A so it makes frame A visible and sets other frames to invisible. The person clicks Button B then it makes frame B visible and so on.
I am currently using a static control as my frame, in which I make buttons/other statics child windows of the static control so I only have to set 1 window to visible/not visible rather than the whole group of windows.
The problem is now how do I set the background color/font of the child windows in the static "frame"? I tried using WM_SETFONT but it only works for windows that are childs of the main window.
So basically the structure is like this:
Main Window ----> Child of Main Window: Frame -----> Child of Frame Window: Label 1
Label 1's backcolor/font won't change but if I make Label 1 a child of Main window it will. But that defeats the whole purpose of having a frame control the visibility of all the other windows in it.
Heres a sample of my code:
Code Select
//GENERATE CONTAINERS
for(int i = 1; i < 4; i++)frame[i] = CreateWindow("Static", "", WS_CHILD | WS_CLIPSIBLINGS, 3, 200, 790, 350, hwndMain, (HMENU)FRAME_START + (i * 20),hThisInstance, 0);
//HOST A TABLE FRAME
HWND dispHost = CreateWindow("Static", "This is the host a table frame", WS_CHILD | WS_CLIPSIBLINGS, 0, 0, 300, 20, frame[1], (HMENU)FRAME_START + 20 + 1,
hThisInstance, 0);
SendMessage(dispHost, WM_SETFONT,(WPARAM)font,0);
ShowWindow(dispHost, 1);
Should I be using another method to group the windows? Help is greatly appreciated. Thanks.
Edit: Nvm, problem resolved. Figured out that I had to subclass it.