|
_AnShUmAn_ wrote: Do remember one thing - OnInitDialog returns TRUE to indicate that the focus should be set to the first control in the dialog box. So if you are setting the focus explicitly to some other control return FALSE from OnInitDialog.
Whether TRUE or FALSE is returned will have no impact on what garfield185 is seeing. Once a control is selected via the mouse, anything that happened in OnInitDialog() is gone.
"A good athlete is the result of a good and worthy opponent." - David Crow
"To have a respect for ourselves guides our morals; to have deference for others governs our manners." - Laurence Sterne
|
|
|
|
|
Can you show your code how did you try to it(not full code )?
|
|
|
|
|
I don´t know which part of the code is making this...
Anyway, if you see the proyect I uploaded in the previous post, it has only an Edit Box, and it´s impossible to write on it until you reach the edit control with the tab key.
Why is that happening?
|
|
|
|
|
Well it seems I cant use of your upload now.
|
|
|
|
|
Hi members!
I´m using the event PreTranslateMessage to catch the Return Key when it´s pressed in a EditBox.
When the user presses VKRETURN...
BOOL CConfLlamDlg::PreTranslateMessage(MSG* pMsg)
{
if(pMsg->wParam == VK_RETURN) // if enter key pressed return true
{
MessageBox("Error");
}
return CDialog::PreTranslateMessage(pMsg);
}
If the user accepts that message Box clicking with the mouse there is no problem, but when I accept the message box pressing Enter key, it generates another VKRETURN message that calls again the PreTranslateMessageFunction.
Can someone help me?
Thanks everybody!!
|
|
|
|
|
You're not checking the message type!
if(pMsg->message==WM_KEYDOWN && pMsg->wParam==VK_RETURN)
Steve
|
|
|
|
|
I always say the same:
I love using this forum and I love you guys!! You are my salvation!! I´m about to finish my proyect and I have no time left!
I really thank you a lot, Steve.
|
|
|
|
|
In addition to what Stephen said, check whether the message is for edit control
if(pMsg->wParam == VK_RETURN && pMsg->message == WM_KEYDOWN && pMsg->hwnd == m_Edit.m_hWnd )
nave
|
|
|
|
|
That´s perfect. Thank you two!
|
|
|
|
|
hi
Any one tell me, how to compress the text data and decompress the same.
i send the text data through socket ,so before sending the data i have to compress and after receving decompress it.
this is done in vc++
if any one know give sample code or give the suggestion
shakumar
|
|
|
|
|
Try to type Compression on CP article search...
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.
|
|
|
|
|
shakumar_22 wrote: Any one tell me, how to compress the text data and decompress the same.
zlib can do this for you.
Its free and readily available for inclusion in your project.
Failure is not an option - it's built right in.
|
|
|
|
|
|
Hi all,
I have 'A.exe' running. It loads and uses 'B.dll'.
How to get the name of the dll i.e 'B.dll'?
If i use GetModuleFileName() in 'B.dll' file, it returns 'A.exe' and not 'B.dll'.
I have to write the code in 'B.dll'.
Thank you
|
|
|
|
|
use this code in the b.dll
TCHAR tczFileName[ MAX_FILE_LENGTH ];<br />
MEMORY_BASIC_INFORMATION stMemoryInfo; <br />
static int nAddress;<br />
HMODULE hModule = 0;<br />
if( VirtualQuery( &nAddress, &stMemoryInfo, sizeof( stMemoryInfo ))<br />
!= 0 )<br />
{ <br />
hModule = reinterpret_cast<HMODULE>( <br />
stMemoryInfo.AllocationBase);<br />
}<br />
DWORD dwFileNameLength = GetModuleFileName( hModule,tczFileName,<br />
MAX_FILE_LENGTH );
nave
|
|
|
|
|
Call GetModuleFileName() like this:
TCHAR szPath[1024] = { _T('\0') };
GetModuleFileName((HMODULE)AfxGetInstanceHandle(), szPath, sizeof(szPath)/sizeof(TCHAR)-1);
For non-MFC DLL's, you can just use the hInstance that was passed to the DllMain() function.
|
|
|
|
|
Thank you both for the solution.
|
|
|
|
|
Your DllMain() receives the HINSTANCE for the DLL. Save that and pass it to GetModuleFileName() .
|
|
|
|
|
i have paths of web pages in an ListBox,these pages are placed in my pc folder, i want to open these pages by double clicking those paths....is there any method which can open(execute) a web page??????? plzzzz plzz reply me sooon!
|
|
|
|
|
MahaKh wrote: is there any method which can open(execute) a web page?
ShellExecute(/*parameters*/);
Somethings seem HARD to do, until we know how to do them.
_AnShUmAn_
|
|
|
|
|
hey _AnShUmAn_!!!
thnxxxx a loooot! it really worked great!!!!
thnx again!!!
|
|
|
|
|
And if you want to show this pages on your program you can use of CHtmlView class.
|
|
|
|
|
i hv sent a mail b4..got answer too..that was not the prblm(24th may-Dynamically Combo)..AddString just displaying that string in to combo..when ever administrator creating a new user,it should be written in a .ini file ..and from there it should be retrieve that and display in user combo box.its about that file creation
and retrieving data from it.how to do it?
There are two dialogs.user creation and user login.
|
|
|
|
|
(1) Please write in plain clean English.
(2) If you really need to use a *.INI file then have to use GetPrivateProfileString, WritePrivateProfileString and so on... (you can find a list of these at the bottom of this page http://msdn2.microsoft.com/en-us/library/ms724875.aspx[^] (please consider the alternative of usign the registry or an XML file for the purpose).
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.
|
|
|
|
|
#define USERNAME_MAXSIZE 260
//write proc
CString oWrite ;
FILE *f ;
f= fopen( "C:\\myfile" , "w" ) ;
//oWrite = combo.text ;
//oWrite = oWrite + "\n" //use a \n at end
//
char bufwrite[USERNAME_MAXSIZE] ;
oWrite = "first_name\n" ;//use a \n at end
fprintf( f , oWrite ) ;
oWrite = "second_name\n" ;
fprintf( f , oWrite ) ;
fclose( f ) ;
//read proc
CString oRead ;
char bufread[USERNAME_MAXSIZE] ;
f = fopen( "C:\\myfile" , "r" ) ;
while( ! feof( f ) && ( fscanf( f , "%s" , bufread ) != -1 ) )
{
oRead = bufread ;
//add to combo
getch();
}
fclose( f ) ;
|
|
|
|