|
Just a guess
UINT nScrollPos = GetScrollPos(SB_VERT)
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
yeah, but that gives me the position instead of the amount of pixel scrolled. Even if I keep the last position and calculate it then, then how will I get the result if it it the first time I request the position and have no previous one... Okay, ,aybe I can assume it was 0... and can I assume it is position = scroll amount in pixels?
Thanks
|
|
|
|
|
If GetScrollBar () is retuning the index of the top most item in the list...multiply this number by the height of each individual item. This value I think can be retreived via CListCtrl::GetItemRect()
That calculation will return scroll position in pixels...i think...
HTH
cheers
"An expert is someone who has made all the mistakes in his or her field" - Niels Bohr
|
|
|
|
|
I have created modal dialog and I passed pointer to my View class to it.
Now I need to get input from the dialog and update my List control in View class in real time.
Is there any way to overwrite modal stage of the view only for input a then reset it back.
|
|
|
|
|
pepevejlupek wrote:
Is there any way to overwrite modal stage of the view only for input a then reset it back.
What do you mean by that?
If you just need to get the data from the dialog and update the view class; just get the data in the part that you call the modal dialog. Then pass this data to your View class using either messaging or calling the functions of the view directly.
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
<nobr>They say I'm lazy but it takes all my time
|
|
|
|
|
thanks i found my problem. it had nothing to do with modal dialog.
|
|
|
|
|
Hello there,
Please introduce good book for learning VC++ .NET ...
I want to learn about .NET, writing webservers and etc by MC++ managed code ...
Regards,
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
Can't go wrong with books from MSPress. Try here[^]
Paul Lyons
Certified Code Project Lurker
|
|
|
|
|
I have a map <cstring, cstring=""> which gets filled in with keys and values chosen by the user. My question is, can the user leave the editbox that holds the value blank? So that that key has a NULL value? Will that mess up my map? Since a NULL is not a CString, there will be some sort of problem right? Yet I do want to use a Map and I do want a user to be able to enter no value at all....
Thanks,
ns
Related question:
If I have an editbox with no entry, what will GetWindowText return in its argument?
|
|
|
|
|
what are you using for the key, a char * or a CString ?
-c
Though the cough, hough and hiccough so unsought would plough me through,
enough that I o'er life's dark lough my thorough course pursue.
--Stuart Kidd
|
|
|
|
|
A CString for key and for the value too. Incidentally I added another question to my initial one..
|
|
|
|
|
if you're using a CString, then NULL is not an issue. you will just have an empty CString as a key in that case, not a NULL.
Though the cough, hough and hiccough so unsought would plough me through,
enough that I o'er life's dark lough my thorough course pursue.
--Stuart Kidd
|
|
|
|
|
Except theres a complication: This map key and value eventually have to be converted to char* because thats the way Access takes them in as records.
|
|
|
|
|
Do you put CString's in your map? If so, NULL is automatically be converted to CString object with no contents. So no problem
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
<nobr>They say I'm lazy but it takes all my time
|
|
|
|
|
ns wrote:
If I have an editbox with no entry, what will GetWindowText return in its argument?
Depends on which GetWindowText you use.
<br />
int GetWindowText( LPTSTR lpszStringBuf, int nMaxCount ) const;<br />
<br />
void GetWindowText( CString& rString ) const;<br />
If you use it with LPTSTR, the first character in the array will be set to '\0'. If you use CString, it will be a CString object with a "" in it
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
<nobr>They say I'm lazy but it takes all my time
|
|
|
|
|
Thats great. But I forgot to add that eventually these friendly CStrings get converted into char*s because I have to put them into a database as rs->fields(key0)->Value = value0
where I strcopied my CStrings key and value over into the corsep key0 and value0. The database didnt like the empty string at all, and didnt put in the record...
Thank you for answering.
ns
|
|
|
|
|
Is it by any chance that this field shouldnt be NULL in the DB?
Papa
Murex Co.
while (TRUE)
Papa.WillLove ( Bebe ) ;
|
|
|
|
|
I created that db field as nullable which in databasey according to docs means(for access) a blank string. SO it shouldnt be upset about that. I get no error msg, just that nothing gets added to the whole record if one fields value is left blank.
|
|
|
|
|
i had once the same prob in access, i didnt solve it, i just replaced a blank string with _ !
Microsofts
Papa
Murex Co.
while (TRUE)
Papa.WillLove ( Bebe ) ;
|
|
|
|
|
I like that solution. So if getwindowtext gives me back a cstring "", I'll just replace it with _, and vice versa when retrieving it. Great idea!
Thanks,
ns
|
|
|
|
|
Asalam mualaekuum?
|
|
|
|
|
I'm tearing my hair out here through frustration because I know its probably the stupidest of problems but whatever way I try I can't get it fixed.
Basically I've taken a CString from the CFileDialogs GetPathName function, I'm needing to turn that into a char*, or more exact a PSTR but I think they're the same, but I keep getting Access Violations whichever way I try this. Just now my code is
<br />
char* szPath = new char[pathToExe.GetLength()+1];<br />
strcpy(szPath,(LPCTSTR)pathToExe);<br />
TRACE("szPath = %s\n",szPath);<br />
I've also tried using the CString.GetBuffer, without the (LPCTSTR), but no luck there either, how the damnation do I do this Please save my sanity and not laugh too hard at the newbie
Thanks fellas
carrie
|
|
|
|
|
Are you sure that the error is in these lines? It seems to be correct.
It may be because allocation of char* on the heap fails (just a guess).
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
<nobr>They say I'm lazy but it takes all my time
|
|
|
|
|
d'oh, you're right, and thanks for the quick reply because you just made me set a breakpoint and saw that it wasn't that that was the problem. I'm trying to use the WinSpy32 code to make something of my own and didn't spot it doing something in the background.
Sorry to be an idiot, 4 years of a computing degree, 3 of them in C & C++ and I can't even do the basics sometimes Thanks again
|
|
|
|
|
carrie wrote:
Sorry to be an idiot, 4 years of a computing degree, 3 of them in C & C++ and I can't even do the basics sometimes
This happens sometimes. Once, in Linux, in a simuation program i was stuck with an error for a whole day. Then I started to blame the simulation program. But it turned out that I was trying to divide an integer by zero Now I blame linux, because instead of telling me that there is a divide by zero error, it just gave me that famous error report "segmentation fault". Nothing more
Mustafa Demirhan
http://www.macroangel.com
Sonork ID 100.9935:zoltrix
<nobr>They say I'm lazy but it takes all my time
|
|
|
|