|
Why do I always have problems with this...and I can never remember how I got it working the last time
Anyways...I have a menu in resource as a POPUP menu and I wish to load it when someone clicks a button...I understand I have to use TrackPopupMenu() and I have to Load the resource, but whenever the button is clicked...I get only a single skinny line representing the menu itself...
Can someone show me exact code required to display a context menu...when I have no menubar or any menu of any kind...just a popup menu resource which I load...
Thanks
The word of the day is legs, let's go back to my house and spread the word
|
|
|
|
|
Here is a complete, commented code fragment to help you out:
CMenu MyMenu;<DIV>
if ( MyMenu.LoadMenu( IDM_MENU1_RESOURCE ) )
{
CMenu* pTargetMenu = MyMenu.GetSubMenu( mySubMenuID );<DIV>
int iSelection = (int)pTargetMenu->TrackPopupMenuEx( TPM_LEFTALIGN | TPM_TOPALIGN | TPM_NONOTIFY | TPM_RETURNCMD,
xPos, yPox, pMainWindow, NULL );<DIV>
}<DIV>
pTargetMenu = NULL;
MyMenu.DestroyMenu(); In the above code example,
- IDR_MENU1_RESOURCE is the resource identifier
- mySubMenuID is the index of the menu you wish to launch (For example, on a default menu, the 'File' would be index number 0)
- xPos and yPos are screen coordinates where to launch the menu
- pMainWnd is a pointer to the window owning the menu. In this case, it can be any window of your application.
- iSelection is the selection made by the user, or zero if user cancelled the menu or an error occurred.
I used the approach of returning the selection value from the menu because in that way, we can make sure that the menu is properly destroyed and freed at the function end.
Alternatively, you can load the menu resource somewhere else in the program, such as the class's constructor and free it in the destructor. This way, you can handle the user's selection on a WM_COMMAND handler of your window, if needed. Also, in that case, pMainWnd must point to the window that has the handler.
Hope this will help you out. For additional info, see the CMenu class in MSDN Library.
-Antti Keskinen
----------------------------------------------
The definition of impossible is strictly dependant
on what we think is possible.
|
|
|
|
|
Very cool thank you muchly
The word of the day is legs, let's go back to my house and spread the word
|
|
|
|
|
Hi! I have a great problem whit Windows Hooks. I'm writing an application similar to Spy++, but i can't manage to capture all Windows messages. I have tried to install an hook on WH_CBT, but i can capture only messages sent to my app. Can you help me!!!
Sorry for my bad english (I'm Italian)
Thanks a lot!!
(I use Windows Xp Professional)
|
|
|
|
|
Do you have the HookProc in a DLL , it needs to be in a DLL file in order to get messages from all windows
Look at this article at cp
http://www.codeproject.com/dll/pwdspy.asp?target=hooks[^]
Hope it helps
C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg
|
|
|
|
|
Yes, i wrote the HookProc in a DLL. Anyway i can't get messages from all windows. It is strange!!
I'll take a look a the article!
Thanks very much
|
|
|
|
|
Hi all,
I try to design my own script debugger in the basis of ms windows script
debug interfaces. But i met some problems.
i read one article from MSDN online -- Active Scripting APIs: Add Powerful
Custom Debugging to Your Script-Hosting App.
First, the author said one rule is imperative to reach, that is to execute
your script code one time, then you can set the breakpoints correctly. i
debugged the sample attached and that's right. otherwise, the
IDebugCodeContext pointer is empty and the breakpoint can't be set enabled.
this seems so strange if there are some UI elements or operations in your
code.
Second, How can i debug one script segment of global code? I changed that sample a little so that global code can directly run not by invoking some named function. I found any breakpoint set in some of global code was invalid.
Thanks a lot
alan
|
|
|
|
|
Hi All
I make a fuction that takes a DC
I want to check if the passed DC is Screen compatible DC (not a printer DC for example)
how can this be done ?
|
|
|
|
|
CDC::IsPrinting() should help you...
Robert-Antonio
Love, truth and electric traction must gain victory over hate, lie
and diesel traction.
|
|
|
|
|
Hi,
How to add icon on the toolbar?
Best Regards,
Siew Hoon
|
|
|
|
|
|
Hi,
I had used the AppWizard to create a Single Document with database. How open a existing database using OnFileOpen control?
Best Regards,
Siew Hoon
|
|
|
|
|
Hi Friends,
How to make application that runs as NT\2000 Service?
Is some extra coding needed for that ?
Thanxs a lot.
C.R.Naik
|
|
|
|
|
|
There is an article that you can probably check out.
http://www.codersource.net/win32_nt_service.html
Thanks
|
|
|
|
|
|
Hi .. i have a simple win32 application (window with some grafics) which i want to acces from a MFC aplication, how do u do that ?
I am also looking for a tutorial to make Multiple forms (by clicking a button u get a new window/form).
|
|
|
|
|
what u wanted to do
if u only wnat to launch the applcation then used shelExecute look at msdn
or
if u want communicate with other applcation then used com
|
|
|
|
|
I have looked and looked can some one point to some detailed info about a list of header files to include for C&C++ Windows... ZoodayZ
|
|
|
|
|
Well... According to the application you want to do it may change... It is different for console, for mfc and for win32 api!
Well... I am a beginner ...
|
|
|
|
|
Well I curious about the mfc but ya didnt think about that. Thankyou for the tip.
|
|
|
|
|
A standard MFC app wizard generated app will include the following files,
#include <afxwin.h> // MFC core and standard components
#include <afxext.h> // MFC extensions
#include <afxdisp.h> // MFC Automation classes
#include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls
#include <afxcmn.h> // MFC support for Windows Common Controls
#include <afxsock.h> // MFC socket extensions
#include <afxdb.h> // ODBC classes
Michael
|
|
|
|
|
Huh interesting so the everyday use stuff. Ok thank you very much... ZoodayZ.
|
|
|
|
|
it gives me a good starting I would like to take a look at each one closely of corse MFC socket is not new but thanks for the names it gives me a head start. ZoodayZ
|
|
|
|
|
What technique would be used to store items in a multi-column CListCtrl?
Would a vector inside a vector work? I need to override the operations of a CListCtrl and store each item added in a seperate array also, instead of just the default builtin storage.
If I have made sense and someone could point me in the right direction I would appreciate it
Thanks
The word of the day is legs, let's go back to my house and spread the word
|
|
|
|