|
Sorry accidentally forgot to edit a paste I made, in the mode create file the path should be..
Program Files\\Program\\ViewSettings.dat"), CFile::modeCreate
Nathan Smith - The Essence of Art in any design is not the medium in which it is made, but the creativity of the finished product.
|
|
|
|
|
Serialization is evil. I'd recommend for simple stuff, just use a plain old text file or INI file. You can use CStdioFile to read in and write text files pretty easily.
If your nose runs and your feet smell, then you're built upside down.
|
|
|
|
|
|
Hi !
I have a constant which I want to use in many classes.
What I think I should do is put this constant in a header file, and include this header file in each cpp file of the classes which will be using this constant.
But, if I declare my constant like this :
const char* MY_STRING = "My string";
the linker complains that MY_STRING is already defined somewhere.
If I declare it that way :
const char MY_STRING[] = "My string";
Why is the first way not working ?
Thanks !
Jerome
|
|
|
|
|
Have a look at the extern keyword.
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
(doesn't work on NT)
|
|
|
|
|
|
How about just
#define MY_STRING _T("My string")
It annoys purists, but it works
Joe Woodbury
When all else fails, there's always delusion.
- Conan O'Brien
|
|
|
|
|
I want to use accelerator keys in my modeless dialog, but PreTranslateMessage is not called. Anyone know how to solve this?
|
|
|
|
|
Interesting.
What keys did you map?
Kuphryn
|
|
|
|
|
At the moment just Ctrl-F. But I don't see why that matters.
For some reason PreTranslateMessage is not called, so the TranslateAccelerator method is not called, with as result that non of my accelerator keys work.
|
|
|
|
|
I've seen this question asked here before, although I don't remember the answer. I suggest you do a Search for it.
Regards,
Alvaro
Can I ask you a question?
|
|
|
|
|
I found a similar post, but still don't know how to do this. I can't imagine I have to make a seperate message loop to handle accelerator keys, like the previous post suguests.
|
|
|
|
|
In the mdi project I could set cx and cy in the precreate function of the mainframe. But in the dialog based proj, how do I set the initial size of my dialog?
Thanks,
ns
|
|
|
|
|
One solution is inside OnInitDialog().
Kuphryn
|
|
|
|
|
Thanks. I used MoveWIndow because I couldnt decide what parameter 1 of SetWindowPos should be..
Thanks,
ns
|
|
|
|
|
|
ns wrote:
I couldnt decide what parameter 1 of SetWindowPos should be
NULL , and use the SWP_NOZORDER flag in the nFlags parameter
Sonork 100.11743 Chicken Little
"You're obviously a superstar." - Christian Graus about me - 12 Feb '03
Within you lies the power for good - Use it!
|
|
|
|
|
ns wrote:
But in the dialog based proj, how do I set the initial size of my dialog?
At design time, in the resource editor.
Five birds are sitting on a fence.
Three of them decide to fly off.
How many are left?
|
|
|
|
|
|
I have a CListCtrl (report view) with 2 columns. Once the list is populated with items, I want the user to be able to edit the information found in the second column. I have it set up so that they can only select one row at a time. Is there some style or state that I can set which will allow a user to do this? (I know it's possible to allow editing of the information in the 1st column, but I havn't yet been able to figure out how to allow editing of the 2nd column, but NOT the 1st column).
|
|
|
|
|
One solution is SetItemText(). Pass in the row and column.
Kuphryn
|
|
|
|
|
That's not exactly what I want. I'd like the user to be able to edit it in place. Like, when they click on it, I want them to be able to edit the contents of that specific item (in the second column) without anything else popping up. I'm assuming that by using SetItemText() I'd have to have a separate place (an edit box) for the user to enter this information, then get the text from that edit box and update the list control with the new text. Ideally, I'd like to be able to just do it from within the list control.
|
|
|
|
|
I'm afraid it's not possible using just CListCtrl . You need something more customizable. Check out the classes available here[^] on CP.
Regards,
Alvaro
Can I ask you a question?
|
|
|
|
|
I read through the article that does this at:
http://www.codeproject.com/listctrl/listeditor.asp
which led me to read an article on CodeGuru.com relating to the same thing.
http://www.codeguru.com/listview/edit_subitems.shtml
I have a bit of a problem. I have a class (CElementListCtrl, derived from CListCtrl) which contains all of the functions found in the above link. In my CTraceElementDialog class I have a member variable of type CElementListCtrl:
CElementListCtrl m_elementList;
The list gets created as it should, but none of the code in the functions contained within CElementListCtrl ever get executed. In the article I used as a reference, it mentioned using the WM_LBUTTONDOWN message, but I can't seem to be able to use that message for my list. The only message available that is close to being the same (I think?) is the NM_CLICK message. I have tried to use a message map for this, but it still doesn't work at all. I have no clue what I'm doing wrong.
|
|
|
|
|