|
Thank you for the clarification.
Perhaps you could answer another question. I have a thread that is owned by the CDocument derived class. The threads sole purpose is to wait on some incomming data then update a structure in the document. The problem I was running into is that when I called UpdateAllViews I would ASSERT() because of some issues with multithreaded programs and c++ objects.
I thought then that I could just update the data, then post a message to the document which in turn calls UpdateAllViews . That way there wouldn't be a problem.
Any suggestions?
Cheers,
Clint
|
|
|
|
|
Why don't you just post a message to the MainFrame and then use GetActiveDocument()->UpdateAllViews(...)?
Also use (CDocumentClassName *)GetActiveDocument()->SpecialProcessingFunctions(..) in the MainFrame to do any document manipulations which can also be message or timer driven.
Steve
|
|
|
|
|
This way it goes more Frame/Doc/View architecture than the pure Doc/View. I would personally avoid coding logic in the frame window unless it's absolutely needed (which is not the case). The message map in CDocument class can be nicely utilized to handle menu/toolbar/accelerator messages that are related to the document. Try to create message handlers in the classes that own the variables you use in these handlers, so there is nothing like ((CDocumentClassName *)CFrameWnd::GetActiveDocument())->SpecialProcessingFunctions(..) , but rather CDocumentClassName::OnSpecial() .
Regards,
BB
|
|
|
|
|
Someone please tell me what classes and DLLs do. Thanks.
|
|
|
|
|
A DLL is a compiled "executable" (not directly) exporting function that one or more applications may call. Since applications are sharing DLLs, if you change a function in the DLL, all the applications will "change" if they call the modified function.
A class is a structure containing function and member variables, who may by instanciated one or more times in objects. To understand the difference between classes and objects, try to remember this comparaison with cook : the class is used to make cakes, objets are cakes.
Then, imagine your class have a function called EatPie() and you have instanciated 3 objects. For each object, you may call EatPie() and potentially decrease a counter counting the number of pie of each cakes.
Since I can't spend more time to explain you classes and DLL, I recommend you to read books or parse the Web about infos.
Cheers,
Florian
|
|
|
|
|
classes are where you go to learn things, like what a DLL does.
|
|
|
|
|
|
hahaha real funny u make it obvious that you dont know either
|
|
|
|
|
Anonymous wrote:
classes are where you go to learn things, like what a DLL does.
|
|
|
|
|
CLASS:
---------------------------------
DEFINITION:
declaration of an object.
EXPLANATION:
Imagine a button, a button has a color, a text and an icon (all those parameters are member variables of the button class).
A button also have a function that is called when the button is pressed (a member function).
SAMPLE:
class cbtn
{
private:
COLORREF m_clrColor;
CString m_csText;
CIcon m_Icon;
void OnClick();
};
Once you have the class declared, you can instantiate (define - create objects of) that class so many times...
DLL:
---------------------------------
DEFINITION:
executable that exports functions and variables to other executables.
EXPLANATION:
You can build dll's or use other dll's that are installed in your computer, those programs can be used from any program that knows how to call their functions or variables...
imagine that you create always a program that (it's just an explanation and the sample will be very stupid) add two numbers and the code to do so is very long (I adviced you that that would be stupid...) then you could consider to place that code in a DLL and call that code from your programs...
FINALLY
---------------------------------
To go to class to learn is interesting if you can't do it, think of reading a good C++ book for learning about classes and another Windows programming book for DLL's...
Hope this helps...
PS:
the samples are just introductory and they have my point of view, they are not the purest and best ones, but they can help you to get the starting point when reading some info regarding this.
NOTE:
my english is not my best.
Hope this helps...
|
|
|
|
|
Ok, This is the same pathetic person who could not get his window app to work. It now works. To whoever told me about the 4 platforms, I think I will go with .NET. I was using MS Visual C++ .NET 2003 and none of my programs would compile. I am wondering why. Even a simple hello world app would not work. Please tell me a bit about .NET since i would like to use that. thanks.
|
|
|
|
|
|
I need to retrieve CColorDlg "Basic colors" palette. The custom colors are placed in CHOOSECOLOR structure - how can I get the basic colors?
Regards,
BB
|
|
|
|
|
It would be nice if I could hide some text in a static control. I experimented a bit, and it looks like anything inserted after a \n is not displayed.
I'm wondering if that's a predictable behaviour, or might it be a function of my particular setup. If it's predictable, and safe, I'll go ahead and use it.
Any thoughts?
|
|
|
|
|
Why not use a hidden static? Though I must say that trying to "hide" something in the GUI sounds like a bad idea...
"was wir auch tun, wohin wir gehen
die illuminaten sind im system
sie kontrollieren überall
und 23 ist ihre zahl!"
23, welle: erdball
|
|
|
|
|
It's not really hidden - your static control is probably only high enough to see the first line. Try expanding it, and you'll probably see the rest.
Dave
|
|
|
|
|
You're right! It's probably reasonably predictable behaviour.
Thanks.
|
|
|
|
|
But it's still not really hidden. If the user has Spy (or something similar) installed, they can trivially retrieve the hidden text. The GetWindowText() API will also return the full text in the control, even if called from another process.
Dave
|
|
|
|
|
The intent was not to hide it as much as it was to encode some additional information in the text that the user wouldn't want to see. It's a long story...
|
|
|
|
|
How to scroll to the line we want?
|
|
|
|
|
What the hell are you talking about ?
Christian
NO MATTER HOW MUCH BIG IS THE WORD SIZE ,THE DATA MUCT BE TRANSPORTED INTO THE CPU. - Vinod Sharma
Anonymous wrote:
OK. I read a c++ book. Or...a bit of it anyway. I'm sick of that evil looking console window.
I think you are a good candidate for Visual Basic. - Nemanja Trifunovic
|
|
|
|
|
My guess scrolling an edit/multiline static to a specific line.
Tim Smith
I'm going to patent thought. I have yet to see any prior art.
|
|
|
|
|
|
.oO(how can I put Christian on my ignore list)
|
|
|
|
|
Easy - go to Code Guru.
Did you ask the question ? Or are you just on the same level as the answer, and so the question actually made sense to you ?
Christian
NO MATTER HOW MUCH BIG IS THE WORD SIZE ,THE DATA MUCT BE TRANSPORTED INTO THE CPU. - Vinod Sharma
Anonymous wrote:
OK. I read a c++ book. Or...a bit of it anyway. I'm sick of that evil looking console window.
I think you are a good candidate for Visual Basic. - Nemanja Trifunovic
|
|
|
|