|
Even though my MFC application contains a manifest which makes its buttons have the XP style, this doesn't work for the buttons in an HTML dialog box.
Does anyone know how to make the buttons in a CHTMLDialog have the XP style?
--------------------------------
"All that is necessary for the forces of evil to win in the world is for enough good men to do nothing" -- Edmund Burke
|
|
|
|
|
Is there anyway to detect a cdrom being ejected?
I've tried RegisterDeviceNotification with various different parameters but still no WM_DEVICECHANGE message received when user eject the CD.
|
|
|
|
|
Here is some rough code of device notification:
void CMyDlg::OnDeviceNotify()
{
CString cs;
HDEVNOTIFY *hdn = NULL;
bool bDevInterResult = DoRegisterDeviceInterface(SOME_GUID, hdn) != 0;
if (bDevInterResult)
{
cs.Format("Device notification : %d", bDevInterResult);
MessageBox(cs);
}
else
{
MessageBox("Device Notification Registration failed");
}
}
BOOL CMyDlg::DoRegisterDeviceInterface(GUID InterfaceClassGuid, HDEVNOTIFY *hDevNotify)
{
DEV_BROADCAST_DEVICEINTERFACE NotificationFilter;
char szMsg[80];
ZeroMemory(&NotificationFilter, sizeof(NotificationFilter) );
NotificationFilter.dbcc_size = sizeof(DEV_BROADCAST_DEVICEINTERFACE);
NotificationFilter.dbcc_devicetype = DBT_DEVTYP_DEVICEINTERFACE;
NotificationFilter.dbcc_classguid = InterfaceClassGuid;
hDevNotify = (void **)RegisterDeviceNotification(GetSafeHwnd(),
&NotificationFilter, DEVICE_NOTIFY_WINDOW_HANDLE);
if (!*hDevNotify)
{
wsprintf(szMsg, "RegisterDeviceNotification failed: %d\n",
GetLastError());
MessageBox((const char*)GetSafeHwnd(),szMsg, MB_OK);
return FALSE;
}
return TRUE;
}
BOOL CMyDlg::OnDeviceChange(UINT nEventType, DWORD dwData)
{
MessageBox("Device Change Occurred");
DEV_BROADCAST_HDR *lpdbh= (DEV_BROADCAST_HDR *)dwData;
switch (nEventType)
{
case DBT_DEVICEARRIVAL:
MessageBox("New Device Arrived");
break;
case DBT_DEVICEREMOVECOMPLETE:
MessageBox("Device Removed");
break;
}
return TRUE;
}
|
|
|
|
|
Yes, I've tried that. It works fine if I set it to a disk GUID and then pull out a USB flash drive, but does not work if i set it to a CDROM GUID or a Volume GUID and then eject the CD.
|
|
|
|
|
I have this form (in PDF) which Im trying to mimic.
It has the text "2007" and it appears as hollow text; that
is there is the black frame for the numbers but the inside
is white.
If I highlight in Adobe Acrobat and click properties, it
shows the font:
HelveticaNeue-Bold
But this is not very helpful. If I try to use this font, it
doesnt show up as hollow.
How can I mimic this font style?
Please, any response any one can give me will be greatly
appreciated.
Sincerely,
Danielle Brina (an overworked graduate student)
|
|
|
|
|
By far the easiest way to achieve this is to use a hollow font, such as Arialic Hollow.ttf.
|
|
|
|
|
Pls i need a help, i m new in visual C++ and i m asked to write a scrabble in C++.
I hope my request will be considered
|
|
|
|
|
urbdos wrote: I hope my request will be considered
Of course, we'll be glad to help. Post the code that you're having a problem with, and we'll take a look.
|
|
|
|
|
thank you for reply my mail but I m sorry for not replying this email as soon as. forgive me for that. As i said in my first mail, i want to write a scrabble game in C++ and it should be human vs. machine, i just want a simple program, so i want you to give me the guidelines, because i m begineer in C++
Thank you;
human vs. machine
|
|
|
|
|
You have to be more specific. Do you want to make a game human vs. human or human vs. machine? The first seems to be a GUI issue, the second seems to be more of a dicionary issue than anything (where will you get it and what quality does it have?).
Rilhas
|
|
|
|
|
Hi,
I'm writing a Windows program which reads in an audio file and allows for some simple manipulations on the waveform.
I'm trying to figure what is the best control to use for displaying the PCM waveform. I guess there are different graphing and charting controls avail, however what I'm really looking for is something interactive. I'd like the user to be able to use the mouse to select part of the waveform for playback with various effects. The selected part of the waveform should be indicated with some kind of highlight effect.
Does such a control exist? Or do I need to write my own?
If I need to write my own, what is the best way to do it? I guess I'm thinking of an MFC SDI dialog based application with some kind of custom control for diplaying/manipulating the waveform. Or I should I just use the Windows API directly for drawing directly in the window?
A further complication is that I would eventually like to create(or use) some kind of super cool skin for the application.
Thanks - @LG
|
|
|
|
|
how do I convert from CString to string, and vice versa.
Also, what does it mean when they say convert to system string?
--Star
|
|
|
|
|
It depends on the exact type of the target string, for instance you can do
CString myCString = "Hi";
const char * myCLikeString = myCString;
to obtain a (constant) C-like string, since CString defines the LPCSTR cast operator.
and
const char * myCLikeString = "Hello";
CString myCString = myCLikeString;
thanks to CString::= operator.
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler.
-- Alfonso the Wise, 13th Century King of Castile.
|
|
|
|
|
|
Hi
I am making an application in VC++ 6.0 and my application type is Dialog based application with static link libeary.
Now problem is that ->
Suppose i am in form one and using its button event coding(When i will reach to form two)
Now when i am at form two form one will also open
mense now there will be two form open
I want that when i will reach at form two form one will close automatically
At a time i will be at only one form.
Please any one told me how i do it.
Regard's
Kaushik
|
|
|
|
|
I hope, both your forms are Modal. In that case you do not need to close the 1st dialog as that will be inactive in any case.
Do you have any specific reason for that?
Manoj
Never Gives up
|
|
|
|
|
Yes
According to client requirment I want to do it
Regard's
Kaushik
|
|
|
|
|
Yeah, like Manoj says, if both dialog are modal, why you would want to close the 1st. dialog?.
However, you could call CDialog::ShowWindow(SW_HIDE) to hide the 1st dialog, and call CDialog::ShowWindow(SW_SHOW) to show it again.
Demian.
"I have always wished that my computer would be as easy to use as my
telephone. My wish has come true. I no longer know how to use my telephone."
-Bjarne Stroustrup, computer science professor, designer of C++
programming language (1950- )
|
|
|
|
|
I have some thread in my project that on of them is blocked but I don't know in which line in my code the thread have been blocked. how can I know where my thread is blocked?
Agh
|
|
|
|
|
mehrdadov wrote: how can I know where my thread is blocked?
Try stopping it in the debugger and then checking where each of your threads is.
I enjoy occasionally wandering around randomly, and often find that when I do so, I get to where I wanted to be [^].
Awasu 2.3 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
|
|
|
|
|
But when a thread is stoped I can't understand where it's stoped even if it was in debugger if you know a approach please help me
Agh
|
|
|
|
|
If you're using VC6:
- In the Debug menu you will find a Threads menu item. This lets you switch between the threads in your program.
- Look at the call stack (View|Debug Windows) to see the stack for the current thread.
Other versions of VS will have something similar.
I enjoy occasionally wandering around randomly, and often find that when I do so, I get to where I wanted to be [^].
Awasu 2.3 [^]: A free RSS/Atom feed reader with support for Code Project. 50% discount on the paid editions for CP members!
|
|
|
|
|
Also, insert TRACE lines inside the thread and see which one is not getting called.
--
=====
Arman
|
|
|
|
|
My thread is main thread so I can't search only in one function and If I set TRACE function for all of class it can't work successfully because It need a lot of CPU time
Agh
|
|
|
|
|
As Taka mentioned, break the execution when you think a thread is deadlocked.
In the Debug/Threads window, double click on each of your app's threads. That sets the debugger's
focus to that thread and brings the source code up with the current execution pointer shown.
If it's pointing at a wait function, it's probably stopped right there. If a dialog pops up
stating there's no source code available then look at the stack trace and go back to the nearest
line of code you find that is in your source code. That will be the current call in progress
on that thread.
Mark
"Posting a VB.NET question in the C++ forum will end in tears." Chris Maunder
|
|
|
|