|
I would post a WM_COMMAND to the main frame.
AfxGetMainWnd()->PostMessage ( WM_COMMAND, ID_MANAGE_USERS );
--Mike--
http://home.inreach.com/mdunn/
A recent survey reports that 1/4 of all internet users in England surf for porn.
The other 3/4 just didn't want to admit it.
|
|
|
|
|
I have a single document with a splitter bar. One left view and one right view. In the right view I have a CFormView where I have placed a FlexGridControl. When I resize the document the Flexgrid doesn't resize. How do I get the flexgrid control to resize?
OyS
|
|
|
|
|
Handle WM_SIZE in CFormView-derived class. In the handler use MoveWindow to change flexgrid size.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Hi All,
I have a query regarding REGEDT32.EXE .I try to programmatically set value for a field in the Registry.This value is a string value.I am using RegSetValueEx() for this and the the maximum length of this string I am specifying as 256.Now, the problem is when the string length is less than this maximum value after the required string some junk values are put in the REGEDT32.EXE .These junk values should not be there in the value for a field.How can I do this?
When I tried the same in Regedit.exe there is no such problem.Whatever may be the string length there are no junk values in the Regedit.exe.
How has to be done to rectify the problem.I also tried NULL terminating the String.Still the problem persists.
Thanx in advance for the help.
Regards,
yamini.
|
|
|
|
|
The last parameter of RegSetValueEx() isn't a "maximum" length, but the actual length of the string, including the terminating zero.
|
|
|
|
|
Hello,
I add a dialogbar into my MFC program. But after I resize the window, the dialogbar will not resize automatically to fit the changed window. What is the matter? If I must initialize this when I create the dialogbar? How can I? Thanks a lot.
Kidd
|
|
|
|
|
Hi:
Who knows how to judge a dialog is a "File Open" dialog. When I hook the message and capture the WM_INITDIALOG, but I can not kown if the dialog is CFileDialog
Thanks
wq1976
|
|
|
|
|
If you can get a pointer to the dialog (either a CWnd* or a CDialog*) then try this:
if (pWnd->IsKindOf(RUNTIME_CLASS(CFileDialog))
// Is a CFileDialog
else
// Is not a CFileDialog
Bret Faller
Odyssey Computing, Inc.
|
|
|
|
|
Hi:
Recently I study the richeditctrl.I find I can not load the data of object which is in rictedit. For example, If I drop a bitmap into the richedit and modify it in richedit, but I don't have way to load the modified object out and saved it as a bmp file. Who knows?
Thanks
wq1976
|
|
|
|
|
Hi:
Recently I study the richeditctrl.I find I can not load the data of object which is in rictedit. For example, If I drop a bitmap into the richedit and modify it in richedit, but I don't have way to load the modified object out and saved it as a bmp file. Who knows?
Thanks
wq1976
|
|
|
|
|
hi all,
i would like to know how i can kill a thread created by AfxBeginThread(). i tried to use TerminateThread() to kill it. i can compile it but i can't kill.
the code is following,
//begin thread
hThread = AfxBeginThread(receiver, msg);
...
...
//kill thread
DWORD exitcode;
hThread = TerminateThread(hThread, exitcode);
it just don't work... how to do?
i know i can use CWinThread's member function to kill it. but, it make me need so much times to reconstruct my code... do i must do it to solve the problem?
regards,
|
|
|
|
|
Forget about TerminateThread. The following is the excerpt from SDK docs:
"TerminateThread is a dangerous function that should only be used in the most extreme cases.
TerminateThread can result in the following problems:
If the target thread owns a critical section, the critical section will not be released.
If the target thread is executing certain kernel32 calls when it is terminated, the kernel32 state for the thread's process could be inconsistent.
If the target thread is manipulating the global state of a shared DLL, the state of the DLL could be destroyed, affecting other users of the DLL."
You need some form of inter-thread communication to avoid the problems with TerminateThread. The easiest solution is to use a volatile boolean variable set initially to false. Main thread sets the flag to true and calls WaitForSingleObject with worker handle when it wants to end the worker. Worker periodically reads the flag and exits if flag is true.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
I tried changing the font in an SDI app but when I type, the font appears with spaces in between the characters. When I highlight the text, the spaces disappear. Any idea what might be causing this behavior and how I can change it? Thanks in advance
--
Peace,
Amit Jain
|
|
|
|
|
|
My bad, should have done that first... It's an SDI application, in C_Doc::OnNewDocument, I have the following:
CFont font;
font.CreatePointFont(120, "Courier New");
((CEditView*)m_viewList.GetHead())->SetFont(&font);
--
Peace,
Amit Jain
|
|
|
|
|
Your CFont variable (and GDI font) is destroyed when it gets out of the scope. Edit control uses invalid handle for painting. Make CFont a document or view data member.
Tomasz Sowinski -- http://www.shooltz.com
|
|
|
|
|
Sweet Jesus I'm bad at this ^^;;
Thanks!
--
Peace,
Amit Jain
|
|
|
|
|
Has anyone implemented a splash screen for a WTL application (or know of an available example)?
There are plenty of MFC based sample available, but I have yet to see a good WTL implementation.
-Joe
|
|
|
|
|
The GetBuffer() solution works fine for GetDlgItemText(...) & GetWindowText( LPTSTR str, int n), but I still don't understand why passing a CString to GetWindowText( CString &rString )doesn't work.
Any ideas?
|
|
|
|
|
GetWindowText is a member of CWindow, which is an ATL class that doesn't know anything about WTL's CString.
CodeGuy
http://groups.yahoo.com/group/wtl
|
|
|
|
|
Hello,
I am using MFC to add an icon on a button. If I use the standard target device(32*32). The icon can show normally on the button. But If I use other target devices or customed target devices ( such as 64*16 ). The icon will fit into 32*32 automatically. So the icon will change and become ugly. If I use resource to add several target devices in the same icon. Add delete the image on the standard device (32*32). Then the icon will not display on the button at all. Who can tell me the reason and how to display the icon with 64*16 target device? Thanks in advance. The following is my code to link the icon with my button.
HICON hIcon;
hIcon = ::LoadIcon(AfxGetResourceHandle(), MAKEINTRESOURCE(IDI_WALK));
((CButton*)GetDlgItem(IDC_Walk))->SetIcon( hIcon );
Kidd
|
|
|
|
|
>>>
HICON hIcon;
hIcon = ::LoadIcon(AfxGetResourceHandle(), MAKEINTRESOURCE(IDR_MAINFRAME));
((CButton*)GetDlgItem(IDC_MY_BUTTON))->SetIcon( hIcon );
<<<
LoadImage() should do the trick for you;
HICON hIcon;
hIcon = (HICON)::LoadImage ( AfxGetResourceHandle(),
MAKEINTRESOURCE ( IDR_MAINFRAME ), IMAGE_ICON, 64, 16, LR_DEFAULTCOLOR );
m_wndMyButton.SetIcon ( hIcon );
Ben Burnett
---------
On the topic of code with no error handling -- It's not poor coding, it's "optimistic"
|
|
|
|
|
Thanx a lot. It worked
Kidd
|
|
|
|
|
Hello. Can anybody tell me how-to add a icon to control listbox in MFC?
Thanks,
Caleb
|
|
|
|
|
Use a CComboBoxEx instead, which has built-in support for images.
--Mike--
http://home.inreach.com/mdunn/
A recent survey reports that 1/4 of all internet users in England surf for porn.
The other 3/4 just didn't want to admit it.
|
|
|
|