|
Le Quang Long wrote: Dear Mr. David Delaune,
I have received your feedback.
What feedback?
|
|
|
|
|
THe code snippet assumes UNICODE is being used.
I would suggest to use generic mapping that will work for both: ANSII and UNICODE:
As for retrieving parts of the path why not to let CRT do it for you using generic (_tsplitpath_s)?
For example:
LPTSTR lpszPath = _T("project.config.user");
TCHAR szFilename[MAX_PATH] = {0};
TCHAR szExt[MAX_PATH] = {0};
_tsplitpath_s(lpszPath, NULL, NULL, NULL, NULL, szFilename, _MAX_FNAME, szExt, _MAX_EXT);
JohnCz
|
|
|
|
|
I implemented the PathFinderExtension from Dave's Suggestion, but your suggestion looks quite interesting. hmm.
I didn't know about that function and how to implement it.
The PathFinderExtension is working quite well now, but let me fix my errors first before making any more changes.
|
|
|
|
|
Dear all everyone,
Please help me calling a dialog in project, I am using visual studio 2005(MFC, detail as below:
- My project have 2 dialogs(1 dialog to show data, 1 dialog login( user name and password) to protect data dialog)
- I created 1 dialog to show data is ok, but when I add a new dialog into this project and can not call dialog). So please help me!
Thanks and Best regards,
|
|
|
|
|
How are you trying to call the dialog? ...you have to show some applicable code.
|
|
|
|
|
I am not sure why check for valid password in OnInitDlg, while it seems that it should be checked before main dialog is invoked. No need for posting any messages to the thread.
Besides, log in dialog should not be checked for cancel only but validate password and/or username.
This code snippet shows how this can be done:
CLoginDlg loginDlg;
loginDlg.DoModal();
INT_PTR nResponse = loginDlg.DoModal();
if(nResponse == IDCANCEL)
{
return FALSE; }
if(loginDlg.m_csUser.CompareNoCase(lpszUser))
{
return FALSE; }
if(loginDlg.m_csPassword.Compare(lpszPassword))
{
return FALSE; }
CMainDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();
.
.
.
JohnCz
|
|
|
|
|
I would do something like :
pre-requisite.
CLoginDialog: your login dialog.
CDataDialog; your main application dialog
The CDataDialog is the main application dialog (for example created via the wizard).
When the CDataDialog is created, you can call/create the login dialog in the OnInitDialog; if the login is valid, just continue, if it is invalid, you can either close the main application, or better continue but disable some stuff or not load the data.
For example ...
BOOL Ctest_dialogDlg::OnInitDialog()
{
CDialog::OnInitDialog();
LoginDialog dlg;
if ( dlg.DoModal() == IDCANCEL)
{
PostQuitMessage(42);
return FALSE;
}
return TRUE; }
Watched code never compiles.
|
|
|
|
|
|
Thank you so much!
Please give me your email!
|
|
|
|
|
Dear Maximilien,
Thank for your feedback! I want to show CLoginDialog(first). After input userID and password successfully, conntinue show CDataDialog(second) and I can type data on this CDataDialog.
Best Regards,
LQL
|
|
|
|
|
Le Quang Long wrote: ...but when I add a new dialog into this project... Are you talking about adding a new dialog template in the project's .rc file, or adding a new CDialog -based class?
Le Quang Long wrote: ...and can not call dialog). Why not? Isn't it just like the other (first) dialog?
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
I talking about adding a new dialog the same dialog-based.
Thanks,
|
|
|
|
|
I talking about adding a new dialog the same dialog-based.
I can not call this new dialog!
Thanks,
|
|
|
|
|
I talking about adding a new dialog the same dialog-based.
I can not call this new dialog( second dialog)! Pls give me a source code(ex)?
Thanks,
|
|
|
|
|
How can we give you source code when we have no idea what your program is doing? If you cannot call a dialog in your program then you need to give a much better explanation, including showing the code that does not work, and explaining what happens when you try.
Binding 100,000 items to a list box can be just silly regardless of what pattern you are following. Jeremy Likness
|
|
|
|
|
I found that some open source project design itself hashtable, when need write itslef hashtable?
It will resolve which problem?
|
|
|
|
|
yu-jian wrote: It will resolve which problem?
What problem is the open source project addressing?
Binding 100,000 items to a list box can be just silly regardless of what pattern you are following. Jeremy Likness
|
|
|
|
|
how can i Select median of two sorted arrays that not have the same size ? and also i need to find with o(logn) time.
|
|
|
|
|
As in the median of the data set in the union of both arrays?
|
|
|
|
|
the median from the both arrays together
|
|
|
|
|
Have a look on Google for "median value of two sorted lists." There's a good algorithm on the first page.
Cheers,
Ash
|
|
|
|
|
|
The idea of step 2 is this:
assuming you have two arrays with N and M elements, respectively, where N < M . Now extend that array by attaching M-N additional numbers. Then you have two arrays of the same size and can use step 1 to solve the problem.
That said, you should not actually extend the smaller array, as that would be O(N). You only have to modify the algorithm to behave as if it were extended. Also the description isn't quite correct as it fails to mention that you have to attach a like number of smaller and bigger elements to make sure the median isn't moved: so add (M-N)/2 elements that are smaller than the smallest element of both arrays at the start of the smaller array, and then (M-N)/2 elements at the end that are bigger than the biggest number in both arrays. (As I said, you don't actually add these values, you only do this virtually).
Example:
arr1 = { 6, 11, 18 } (length 3)
arr2 = { 4, 5, 8, 9, 10, 12, 15 } (length 7)
step 2 (adding 2 values at both the start and the end):
arr1a = { 1, 2, 6, 11, 18, 19, 20 } (length 7)
Actually "step 2" is a misnomer as it is supposed to be executed before step 1 in case the precondition (same array size) isn't met.
|
|
|
|
|
What do two arrays have to do with the problem? Put them together into a single array, which need not be sorted. There are no fewer than five such algorithms available online (e.g., Dromey, Knuth, Floyd). This very subject was my thesis paper in graduate school.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"Show me a community that obeys the Ten Commandments and I'll show you a less crowded prison system." - Anonymous
|
|
|
|
|
if i Put them together into a single array ,it's not o(logn)
|
|
|
|