|
Hi,
I can access the doc from the view this way:
CGeneratorDoc * pDoc = GetDocument();
How do I access the view from the doc?
|
|
|
|
|
One quick and dirty way is to create a dummy project with the view to create as CEditView. This in effect creates a notepad like application. You can then look at the Doc to see how it is done. I never remember exactly how, but this is how I go find out. Also, there is a way to get the view (if it is a SDI and you will not be attaching anymore). Look in the MSDN for artical Q108587.
Good Luck
Larry J. Siddens
Cornerstone Communications
TAME THE DOCUMENT MONSTER
www.unifier.biz
|
|
|
|
|
Use GetFirstViewPosition() /GetNextView() .
|
|
|
|
|
I'm still getting errors.
This is SDI application and I have two FormViews. I am trying to access functions of the first view class from the document.
I'm doing the following in the document class:
POSITION pos = GetFirstViewPosition();
CView* pFirstView = GetNextView( pos );
(CMyView *)pFirstView-> Function();
But, I'm getting errors which points to the declaration of the GetDocument() in the view class as following:
c:\rulegenerator\generator.v.13.0\generator.v.5.0\generatorview.h(34) : error C2143: syntax error : missing ';' before '*'
c:\rulegenerator\generator.v.13.0\generator.v.5.0\generatorview.h(34) : error C2501: 'CGeneratorDoc' : missing storage-class or type specifiers
c:\rulegenerator\generator.v.13.0\generator.v.5.0\generatorview.h(34) : error C2501: 'GetDocument' : missing storage-class or type specifiers
Generator.cpp
.......
Please help
|
|
|
|
|
Which one of these lines is it on? It is complaining about something in the view.h. Make sure that the doc.h file is before the view.h in the #include list.
Larry J. Siddens
Cornerstone Communications
TAME THE DOCUMENT MONSTER
www.unifier.biz
|
|
|
|
|
even after casting the view to my view class, i can't access view class functions.
POSITION pos = GetFirstViewPosition();
CView* pFirstView = GetNextView( pos );
(CGeneratorView *)pFirstView-> OnPopupRemove();
error:
C:\RuleGenerator\Generator.V.14\Generator.v.5.0\GeneratorDoc.cpp(633) : error C2039: 'OnPopupRemove' : is not a member of 'CView'
c:\program files\microsoft visual studio\vc98\mfc\include\afxwin.h(3542) : see declaration of 'CView'
|
|
|
|
|
Yeah, it isn't. Included the header for your view. Make sure it is after the doc.h. That should solve your problem.
Larry
Larry J. Siddens
Cornerstone Communications
TAME THE DOCUMENT MONSTER
www.unifier.biz
|
|
|
|
|
i have included view header after the doc header, still the casting is not working.
|
|
|
|
|
Try this:
POSITION Pos = GetFirstViewPosition();
ASSERT( Pos ); // Check to see if it returns a valid value.
CGeneratorView* pView = (CGeneratorView*)GetNextView( Pos );
pVeiw->OnPopupRemove();
or:
POSITION Pos = GetFirstViewPosition();
ASSERT( Pos );
CGeneratorView* pView = reinterpret_cast< CGeneratorView* >( GetNextView( Pos ));
pView->OnPopupRemove();
The dynamic_cast is best, you need to enable the RTTI in you build options to use this. It is better checking than the reinterpret_cast which does nothing.
Now, This is assuming that OnPopupRemove is a public method.
Larry
Larry J. Siddens
Cornerstone Communications
TAME THE DOCUMENT MONSTER
www.unifier.biz
|
|
|
|
|
cool..that worked.
Thanks a LOT Larry!!
|
|
|
|
|
No Problimo! Glad I could help.
Larry J. Siddens
Cornerstone Communications
TAME THE DOCUMENT MONSTER
www.unifier.biz
|
|
|
|
|
CGeneratorView *pFirstView = (CGeneratorView *) GetNextView(pos);<br />
pFirstView->OnPopupRemove();
|
|
|
|
|
Your casting was wrong
You should have done it this way...
/********Your Code *****************/
(CGeneratorView *)pFirstView-> OnPopupRemove();
/************************************/
/********Suggestion*****************/
((CGeneratorView *)pFirstView)-> OnPopupRemove();
/************************************/
"A robust program is resistant to errors -- it either works correctly, or it does not work at all; whereas a fault tolerant program must actually recover from errors."
|
|
|
|
|
I want to display files in listview using icons associated with file ext.
but I can't find where does window store info about files to extract icons from. Can somebody tell me how to do that ?.
Thanks in advance.
|
|
|
|
|
One solution is SHGetFileInfo().
Kuphryn
|
|
|
|
|
probably i lost my eyes looking 2 hours in msdn for this function.
Thanks for your help.
|
|
|
|
|
Hi,
I have a virtual (LVS_OWNERDATA) list control working just fine. Only problems is I can't programatically change an item's state. Docs say that the virtual list view does manage selection+focus state, and, when I click around, it surely does. But SETITEM, modifying the state, returns false, and does nothing.
Any ideas?
[edit] found it - LVM_SETITEM doesn't work, but LVM_SETITEMSTATE does. (yes, I was filling the LVITEM correctly)[/edit]
"Der Geist des Kriegers ist erwacht / Ich hab die Macht" StS
sighist | Agile Programming | doxygen
|
|
|
|
|
Post the code that sets the item state.
Kuphryn
|
|
|
|
|
thx - found it (LVM_SETITEM doesn't work for the virtual ctrl, but LVM_SETITEMSTATE does)
"Der Geist des Kriegers ist erwacht / Ich hab die Macht" StS
sighist | Agile Programming | doxygen
|
|
|
|
|
Hi!
How to extand and access the internat Office object structure.
Is there any Dev Kit for Microsoft Partners that in not available to "normal" users?
Something like NOKIA back entrence!?
gicio
|
|
|
|
|
ifstream fs("demo.txt" );
'fs' uses undefined class 'basic_ifstream<char,struct std::char_traits<char=""> >'
C:\IniFile.cpp(59) : error C2440: 'initializing' : cannot convert from 'char [9]' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
Error executing cl.exe.
This is the constructor
ifstream( const char* szName, int nMode = ios::in, int nProt = filebuf::openprot );
what am i missing ?
|
|
|
|
|
Do you have the right #include files in place? Is the UNICODE directive defined?
|
|
|
|
|
no it hasnt been defined . so what are the includes that I need ?
|
|
|
|
|
This worked for me:
#include < fstream.h >
void main( void )
{
ifstream fs("demo.txt");
}
|
|
|
|
|
Hello all,
Is there a C++ regex library in MFC I can easily use? What about without MFC (ie. command line app)?
I've been reaquainting myself with C++ and have been using Borland's Bcc32 compiler but I do have VS.NET and can do MFC.
*->>Always working on my game, teach me
*->>something new.
cout << "dav1d\n";
|
|
|
|