|
PostMessage function [^] takes four parameters, indeed.
I.e. did you realize the thread procedure is NOT a method (a instance one) of your dialog class?
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.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong.
-- Iain Clarke
[My articles]
|
|
|
|
|
If you're starting your thread from within the dialog you want to update, pass the hwnd of the dialog as the LPARAM if you use MFC (AfxBeginThread) - then you can use that in your PostMessage. If you don't use MFC, you can pass it as arglist or lpParmeter depending on how you start your thread.
You can use GetSafeHwnd() in your dialog to get the hWnd to pass.
Inside the thread, cast that parameter to an hWnd and you've got it.
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
you can also you the application object memeber variable m_hWnd!
"Opinions are neither right nor wrong. I cannot change your opinion. I can, however, change what influences your opinion." - David Crow Never mind - my own stupidity is the source of every "problem" - Mixture
cheers,
Alok Gupta
VC Forum Q&A :- I/ IV
Support CRY- Child Relief and You/xml>
|
|
|
|
|
I'm searching a 2d array with this all I get is not found any help please
#include <stdio.h>
void main( )
{
int x,
y;
int iTwoD[ 3 ][ 3 ]={ { 1,2,3 } , { 4,5,6 } , { 7,8,9 }} ;
int iFoundAt[2]={0,0};
int iValue = 0;
int iFound = 0;
printf( "\nEnter a search value: " );
scanf( "&d", &iValue );
for( x = 0; x <= 2; x++ )
{
for( y = 0; y <= 2; y++ )
{
if( iTwoD[ x ][ y ] = iValue )
{
iFound = 1;
iFoundAt[ 0 ] = x;
iFoundAt[ 1 ] = y;
break;
}
}
}
if( iFound == 1 )
printf( "\nFound value in iTwoD[%d][%d]\n", iFoundAt[ 0 ], iFoundAt[ 1 ] );
else
printf( "\nsearch value not found\n" );
}
|
|
|
|
|
gordon3056 wrote: scanf( "&d", &iValue );
this line is faulty; did you inspect the value of iValue?
|
|
|
|
|
thanks very much bin looking at this for 6 days I might be able to finish the book now
|
|
|
|
|
gordon3056 wrote: scanf( "&d", &iValue );
Should be
scanf( "%d", &iValue );
The debugger is your friend!
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Mark Salsbery wrote: The debugger is your friend!
and CodeReview by CodeProject is your pal!
|
|
|
|
|
Luc Pattyn wrote: and CodeReview by CodeProject is your pal!
What is this "CodeReview"??
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Mark Salsbery wrote: What is this "CodeReview"??
That is a conspiracy of some 5 million people, where in turn one finds the erroneous line,
and another one indicates the exact column of the mistake.
|
|
|
|
|
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
thanks very much
|
|
|
|
|
I think you also want the equality operator here:
if( iTwoD[ x ][ y ] == iValue )
Hope that helps.
Karl - WK5M
PP-ASEL-IA (N43CS)
PGP Key: 0xDB02E193
PGP Key Fingerprint: 8F06 5A2E 2735 892B 821C 871A 0411 94EA DB02 E193
|
|
|
|
|
gordon3056 wrote: if( iTwoD[ x ][ y ] = iValue )
should be (== NOT = ):
if( iTwoD[ x ][ y ] == iValue )
This signature was proudly tested on animals.
|
|
|
|
|
Good eyes guys - I didn't see that one
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
if( iTwoD[ x ][ y ] = iValue )
and this line should be:
if( iTwoD[ x ][ y ] == iValue )
|
|
|
|
|
|
how to Window title bar sliding under the menu bar ,please give me examples or Recommendations
wqewqqeweqwrwerewrwe
|
|
|
|
|
Hi,
I have a menu in a CDialog, but it's looking ugly so I'm wondering if there is any way to use a menu bar instead. I don't need any docking capabilities, just a better-looking menu. I found CMenuBar from Paul DiLascia's article at http://www.microsoft.com/msj/0199/c/c0199.aspx[^], but it says it's designed for MDI apps. So, is there anything I can use in CDialog?
There is sufficient light for those who desire to see, and there is sufficient darkness for those of a contrary disposition.
Blaise Pascal
|
|
|
|
|
sashoalm wrote: I have a menu in a CDialog, but it's looking ugly so I'm wondering if there is any way to use a menu bar instead.
I am wondering if you can't use something other than a Dialog?
led mike
|
|
|
|
|
Word of the day - overkill?
But seriously, it would be too much effort, and prettier menus don't justify it. And as I said, it's not anything critical, the default menus just look ugly.
There is sufficient light for those who desire to see, and there is sufficient darkness for those of a contrary disposition.
Blaise Pascal
|
|
|
|
|
sashoalm wrote: Word of the day - overkill?
But seriously, it would be too much effort
Rather than argue with you I will conclude my involvement in this attempt to assist you by making sure you have been made aware of the CFormView class in the MFC library.
led mike
|
|
|
|
|
I have an application using MFC dialog,
I want my application to be more beautiful.
I want to use pictures as the background of the dialog, as the minimize buttons, as the maximize buttons...
Can anyone tell me how to do this or give me references?
I tried to google and found CDhtmlDialog but doesn't know if it's really fit my want.
|
|
|
|
|
You can make a picture the background of the dialog by drawing it in the dialog's OnPaint () handler. (OnDraw () doesn't work for dialog boxes.) Another possiblity is OnEraseBackground ().
MFC has a CBitmapButton class that you can use for pictures on the buttons.
|
|
|
|
|
You can use of WM_ERASEBKGND with a simple code like this
#include atlImage.h
CImgae m_1;
m_1.Load(_T("c:\\1.jpg"));
on the WM_ERASEBKGND you use of this line
m_1.BitBlt(0,0,1024,760);
and for buttons codeproject has good articles so you can search about them and why you must use of CDhtmlDialog?
|
|
|
|