15 мая 2023 года "Исходники.РУ" отмечают своё 23-летие!
Поздравляем всех причастных и неравнодушных с этим событием!
И огромное спасибо всем, кто был и остаётся с нами все эти годы!

Главная Форум Журнал Wiki DRKB Discuz!ML Помощь проекту


CCmdUI for control bar in CMDIChildFrame

Yoong Hor Meng -- eng30391@leonis.nus.sg
Tuesday, January 28, 1997

Environment: VC++ 1.52, Windows 3.11

Hi:
	I have use the example in mfc/samples/ctrlbar to implement a
CPaletteBar, which is just a floating CControlBar.  The different is that
the owner is CMDIChildFrame instead of CMainFrame.  I guess it should have
no problem.  No the problem is that when user click a button on palette
bar, the button does not sink after the click is released, ie remain
normal.  Somebdy has mentioned before that in order to check to the button
that the user has click, I need to implemet another object such as
combobox to synchrnize the state of the palette.  I have tried it too, it
does not work.  any idea?  Thank you.





Yuriy Briklin -- ybriklin@juno.com
Wednesday, January 29, 1997

Hi Yoong.

In order to check a button or menu item you should create handler for
UPDATE_COMMAND_UI (you can use Class Wizard) for this button or menu
item.  You can create this handler in any class that is in automatic
routing chain otherwise you should rout
UPDATE_COMMAND_UI message yourself.
Pay attention to file mainfrm.cpp from mfc/samples/ctrlbar project. In
the message map of CMainFrame you can see lines:
	ON_UPDATE_COMMAND_UI(ID_PALETTEERASE, OnUpdatePalette)
	ON_UPDATE_COMMAND_UI(ID_PALETTEPEN, OnUpdatePalette)
	...
	...
and at the end of the file you can find function OnUpdatePalette(). This
function does the job.
Yes, combo box is used in OnUpdatePalette(), but you can store user's
selection in any class member of in any static variable.
In the example combo box is used just to give a user the  way to make a
selection without palette (you can hide it using menu).

I hope this will help you.
Yuriy Briklin


On Tue, 28 Jan 1997 11:26:36 +0800 (SST) Yoong Hor Meng
 writes:
> Environment: VC++ 1.52, Windows 3.11
> 
> Hi:
> 	I have use the example in mfc/samples/ctrlbar to implement a
> CPaletteBar, which is just a floating CControlBar.  The different is 
> that
> the owner is CMDIChildFrame instead of CMainFrame.  I guess it should 
> have
> no problem.  No the problem is that when user click a button on 
> palette
> bar, the button does not sink after the click is released, ie remain
> normal.  Somebdy has mentioned before that in order to check to the 
> button
> that the user has click, I need to implemet another object such as
> combobox to synchrnize the state of the palette.  I have tried it 
> too, it
> does not work.  any idea?  Thank you.
> 
> 
> 




| Вернуться в корень Архива |