|
|
Hi,
I Want to disable move menuitem in a window's system menu, please help.
Thanks
Bose
|
|
|
|
|
Congratulations!!! Good question. I wasted two hours of my life today doing this s..t for you.
Below is a solution of the problem:
BOOL CYourDlg::PreTranslateMessage(MSG* pMsg)
{
if((pMsg->message==WM_NCLBUTTONDOWN && SendMessage(WM_NCHITTEST,0,pMsg->lParam)==HTSYSMENU) ||
(pMsg->message==WM_NCRBUTTONDOWN && SendMessage(WM_NCHITTEST,0,pMsg->lParam)==HTCAPTION))
{
CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
if(GetStyle()&WS_THICKFRAME)
pSysMenu->EnableMenuItem(SC_SIZE,MF_BYCOMMAND|MF_ENABLED);
else
pSysMenu->EnableMenuItem(SC_SIZE,MF_BYCOMMAND|MF_GRAYED);
if(GetStyle()&WS_MINIMIZEBOX||GetStyle()&WS_MAXIMIZEBOX)
{
if(GetStyle()&WS_MINIMIZEBOX)
{
if(IsIconic())
{
pSysMenu->EnableMenuItem(SC_MINIMIZE,MF_BYCOMMAND|MF_GRAYED);
pSysMenu->EnableMenuItem(SC_RESTORE,MF_BYCOMMAND|MF_ENABLED);
}
else
{
pSysMenu->EnableMenuItem(SC_MINIMIZE,MF_BYCOMMAND|MF_ENABLED);
pSysMenu->EnableMenuItem(SC_RESTORE,MF_BYCOMMAND|MF_GRAYED);
}
}
else
pSysMenu->EnableMenuItem(SC_MINIMIZE,MF_BYCOMMAND|MF_GRAYED);
if(GetStyle()&WS_MAXIMIZEBOX)
{
if(IsZoomed())
{
pSysMenu->EnableMenuItem(SC_MAXIMIZE,MF_BYCOMMAND|MF_GRAYED);
pSysMenu->EnableMenuItem(SC_RESTORE,MF_BYCOMMAND|MF_ENABLED);
}
else
{
pSysMenu->EnableMenuItem(SC_MAXIMIZE,MF_BYCOMMAND|MF_ENABLED);
pSysMenu->EnableMenuItem(SC_RESTORE,MF_BYCOMMAND|MF_GRAYED);
}
}
else
pSysMenu->EnableMenuItem(SC_MAXIMIZE,MF_BYCOMMAND|MF_GRAYED);
}
<BR>pSysMenu->EnableMenuItem(SC_MOVE,MF_BYCOMMAND|MF_GRAYED);
int nRet = pSysMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON|TPM_RETURNCMD, LOWORD(pMsg->lParam), HIWORD(pMsg->lParam), this);
PostMessage(WM_SYSCOMMAND,nRet,pMsg->lParam);
return 1;
}
}
return CDialog::PreTranslateMessage(pMsg);
}
Regards,
Andrzej Markowski
|
|
|
|
|
I have an application that is compiled for Unicode (MSVC 7.0). I need to call functions in a DLL that is MBCS only. I need suggestions on how to convert the function args that are passed between the Unicode and non-unicode layers.
Jim S
|
|
|
|
|
I have an angry baby sitting on my lap so I'm going to be quick about it:
MultiByteToWideChar
WideCharToMultiByte
look'em up
"After all it's just text at the end of the day. - Colin Davies
"For example, when a VB programmer comes to my house, they may say 'does your pool need cleaning, sir ?' " - Christian Graus
|
|
|
|
|
|
I knew about converting strings to/from Unicode and the ATL macros. I didn't know if anything special had to be done to make function calls work correctly between a Unicode and a non-Unicode DLL. I think that the answer is that you only have to worry about keeping the strings straight.
|
|
|
|
|
I have 5 CString and i want to write it to a txt file on 5 different lines at the end of the file help please.
|
|
|
|
|
insert "\r\n" between each CString then call CFile::Write()
[insert witty comment here]
bdiamond
|
|
|
|
|
that what i did it printed 2 ascii
|
|
|
|
|
I want to write an APP for window media player to play a video.
What should i do?
|
|
|
|
|
RockRock wrote:
I want to write an APP for window media player to play a video.
What should i do?
Have you actually tried yet? If so, what have you done so far, and what didn't work? You're a lot more likely to get answers if you post a question we could actually answer, such as:
"I'm trying to use Windows Media Player to play a video from inside my application, but calling CoCreateInstance() to create an IWMPCore object always fails. I've got Media Player 9 installed and I'm successfully calling CoInitialize(). What else could cause CoCreateInstance() to fail?"
Notice the difference between that and your question?
If you haven't tried yourself, then I don't think many people would be willing to help.
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
i am sorry.
since i don't know how to get started on it.
|
|
|
|
|
Well, you can have a look at the Windows Media Player ActiveX control, or you can use the IWMPCore interface that I mentioned before. I haven't done it myself so I can't really help much more than that.
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
I was working on something when the computer crushed and msdev.exe closed. After that i opened msdev.exe but there was no menu items, toolbar no nothing but only the editing window displayed i suspected that the toolbar and menu setting file (probably the .ini) file become corrupted.
i have heard some where that when i execute the program from the start->run and run the program by writing "msdev.exe -something" and runningthe program i can fix all this but i searched the windows help and msdn for such things but couldn't find any
i have a friend who has the same problem with microsoft word but he gets around using the keyboard shortcuts.
if you know this by any way pls help me i am stuck and got a work to do.
|
|
|
|
|
Have you rebooted the machine?
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Ryan Binns wrote:
Have you rebooted the machine?
Very Nice reply
<marquee> STUCK STUCK STUCK STUCK
Stuck to Programming through an unbreakable bond
My Articles | My Blog
|
|
|
|
|
I want to send a partition of video file and some data files(text and images) from one terminal to another terminal. After sending, the video should be playable.
Therefore, I have to write a program that perform streaming.
1.-RTSP / RTP, which is better?
2.-Shall i choose to use WMV, ASF or AVI file?
3.-Any other methods are welcome.
Please help me.
|
|
|
|
|
Actually I have been programming for quit som years, but everytime I have to validate a control when I leave it I do some trial and error exploring.
I like to know if somebody can tell me, whats the right strategi for doing this.
Jørgen Granborg
Jørgen Granbborg
|
|
|
|
|
How about the WM_KILLFOCUS message?
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
Right so long so good, but how do I know where the focus vil go. If the user close the dialog or exit or switch to some other program, then I dont want to validate.
|
|
|
|
|
If the user dismisses the dialog, or switches to some other window, you don't need to validate any of the controls. The OK button should not be enabled until each control contains valid data.
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
JGranborg wrote:
Validating control content when loosing focus
Be careful If two fields depend on each other, you can get into an infinite loop where the user can't leave the field they're editing. I've experienced this before and it's very frustrating
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
just a simple q
in the printf() function, if we use %E or %e, the output is in scientific notaion
e.g. 2.11E+002
now i wanna ask how can i change it into the form 2.11E2, without + sign and leading zero.
thx
|
|
|
|
|
jooo wrote:
...how can i change it into the form 2.11E2, without + sign and leading zero.
You would have to parse it yourself.
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|