|
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";
|
|
|
|
|
MFC does not provide such a class. You might want to search CodeProject, or use Google to do a broader search.
|
|
|
|
|
Check out the Boost[^] library. They have a regular expression parser.
Brad
|
|
|
|