--- In [email protected], Thomas Hruska <thru...@...> wrote: > > wy737 wrote: > > --- In [email protected], Thomas Hruska <thruska@> wrote: > >> wy737 wrote: > >>> Hi, friend. > >>> Any one know how to create menu shortcut in vc++ ? > >>> > >>> I used accelerator like below: > >>> > >>> IDR_MAINFRAME ACCELERATORS > >>> BEGIN > >>> "X", ID_FILE_EXIT, VIRTKEY, CONTROL > >>> END > >>> > >>> and add some for my menu like this: > >>> "E&eit\tCtrl + x" > >>> > >>> but doesn't work, even doesn't display underline ? > >>> How come ? some things wrong ? help please! > >> Well any number of things could be wrong. The accelerator isn't being > >> translated is the most likely cause. The underline issue could be the > >> OS configuration (i.e. there is a global option to turn on underlines in > >> menus). Your menu has to have the same ID as the accelerator to handle > >> it correctly. Ctrl+X may have other meanings and could be getting > >> trapped by a standard UI component. > >> > >> BTW, Ctrl+X is typically "Cut" (for 'cut-and-paste' operations) and > >> Alt+F4 or Ctrl+F4 are generally exit and close respectively. You should > >> stick to standard behavior. Hijacking Ctrl+X is going to be weird for > >> most people. > >> > >> -- > >> Thomas Hruska > >> CubicleSoft President > >> Ph: 517-803-4197 > >> > >> *NEW* MyTaskFocus 1.1 > >> Get on task. Stay on task. > >> > >> http://www.CubicleSoft.com/MyTaskFocus/ > >> > > Thomas, > > Thanks, I learn some thing today. > > > > But I only create two menus: > > > > IDR_MENU MENU DISCARDABLE > > BEGIN > > POPUP "&File" > > BEGIN > > MENUITEM "E&xit\tCtl+x", ID_FILE_EXIT > > END > > POPUP "&Test" > > BEGIN > > MENUITEM "&Input", ID_TEST_INPUT > > END > > END > > > > > > ///////////////////////////////////////////////////////////////////////////// > > // > > // Accelerator > > // > > > > IDR_ACCELERATOR ACCELERATORS DISCARDABLE > > BEGIN > > "I", ID_TEST_INPUT, VIRTKEY, CONTROL > > END > > > > I use VC++ 6.0. > > I don't understand why doesn't work and even doesn't show underline ? > > could you help me ! > > I second the upgrade to your compiler. I haven't used VC++ 6 in ages > and you are going to be hard-pressed to find someone too familiar with it. > > IIRC, your menu ID should match the mainframe. Accelerators might be > the same way (i.e. everything related to the mainframe should probably > be named IDR_MAINFRAME). Set up a default MFC MDI project and see how > it sets up the menu and accelerators. But first upgrade your compiler. > Unfortunately, VC++ Express doesn't include MFC, which makes it a bit > more difficult. > > You should also consider not using MFC in the first place (since you are > new to GUI stuff anyway). wxWidgets, for instance, is a cross-platform > GUI toolkit worth looking at. > > -- > Thomas Hruska > CubicleSoft President > Ph: 517-803-4197 > > *NEW* MyTaskFocus 1.1 > Get on task. Stay on task. > > http://www.CubicleSoft.com/MyTaskFocus/ >
Thanks, may I need upgrade my VC++ version later.
