|
Hello!
I use the MS FlexGrid ActiveX in a dialog box (just the grid and a OK button). But I need it to be automatically resized so the grid fits perfectly in the control. I need then to resize the dialog.
The problem is that the height and width of the grid are expressed in twips. So I have some difficulties to convert them to use for MoveWindow (control & Dialog).
Any idea ?
|
|
|
|
|
Hi,
i have to write a Dialog which should has a banner (bmp) on the top (not in the title bar) and under this banner there has to be a PropertySheet or a CTabCtrl. Don't ask why it has to look like this!
Here's the problem:
1) if i use CPropertySheet i can't display the PropertySheet in my dialog, because it has it's own. Is there a way to display the propertysheet in MY dialog ?
2) if i try to use CTabCtrl, there is no chance to put stuff like edit controls, list controls etc. in it. Does CTabCtrl make sense at all. Why does this f***ing Class exist ????
I need help!
Thanks!
|
|
|
|
|
You can embed a property sheet in a dialog. Just use CPropertySheet::Create() , specify a non-NULL parent window, and specify WS_CHILD as one of the window styles:
BOOL CMyDialog::OnInitDialog()
{
m_PropSheet.Create(this, WS_CHILD | WS_VISIBLE);
} You'll have to resize the property sheet so it uses the correct amount of space as well.
Hope this helps,
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Well, well! I works. Thanks Ryan!
hph
|
|
|
|
|
You're welcome
Ryan "Punctuality is only a virtue for those who aren't smart enough to think of good excuses for being late" John Nichol "Point Of Impact"
|
|
|
|
|
Hi!
I'm trying to make serialization to work, I tried this:
try
{
CFile file(_T("SerialTest.dat"), CFile::modeWrite | CFile::modeCreate);
CArchive ar(&file, CArchive::store);
int a = 3,b = 5;
CString str(_T("Hello"));
if( ar.IsStoring() )
{
ar<<a<<b<<str;
}
="" file.close();
="" }
="" catch(cfileexception*="" e)
="" {
="" e-="">ReportError();
e->Delete();
}
The file is created, but is empty..
any ideas?
thanks
Mykel
Everything's beautiful if you look at it long enough...
|
|
|
|
|
Try
if( ar.IsStoring() )
{
ar<<a<<b<<str;
ar.Flush();
}
rechi
|
|
|
|
|
Close the archive before closing the file:
ar.Close();
file.Close();
-Dominik
_outp(0x64, 0xAD);
and
__asm mov al, 0xAD __asm out 0x64, al
do the same... but what do they do??
|
|
|
|
|
Hi!
I'm trying to make serialization to work, I tried this:
try
{
CFile file(_T("SerialTest.dat"), CFile::modeWrite | CFile::modeCreate);
CArchive ar(&file, CArchive::store);
int a = 3,b = 5;
CString str(_T("Hello"));
if( ar.IsStoring() )
{
ar<<a<<b<<str;
}
="" file.close();
="" }
="" catch(cfileexception*="" e)
="" {
="" e-="">ReportError();
e->Delete();
}
The file is created, but is empty..
any ideas?
thanks
Mykel
|
|
|
|
|
Hi all
I want use control which probably was maked on VisualBasic
i use type library one by #import keyword .But compiler give me error about FontPtr and PicturePtr not defined.
I guess its defines contained in comdef.h but its defines diffrent from necessary
i.e. in generated tlh and tli used FontPtr and PicturePtr types but in comdef.h defined IPicturePtr and IFontPtr types.
This import bug or in my curve hands???
Thanks.
|
|
|
|
|
Hi all,
I know i can communicate with the visual source safe using command lines....
I want like to do via code the following : check if a certain file is checked out or not do this by performing the proper command line.....
can any1 show me how to?
thanks in advanced
Yaron Nir
Ask not what your application can do for you,
Ask what you can do for your application
|
|
|
|
|
SourceSafe provides a COM interface with which you can perform all the functions that you can from the command line, complete with the entire object model. There are several good help files in MSDN about it, particularly one entitled Microsoft Visual SourceSafe OLE Automation. Here's some sample code that will get a file out of SourceSafe if it's not checked out:
#include "ssapi.h"
void CSourceSafeWrapper::GetWritableFileFromSourceSafe (CString sSourceSafeFile, CString sOnDiskTargetFile)
{
IVSSDatabase db;
if (db.CreateDispatch ("SourceSafe")) {
CString sSSDatabase, sUsername, sPassword;
ReadSSLoginSettings (sSSDatabase, sUsername, sPassword);
try {
db.Open (sSSDatabase, sUsername, sPassword);
LPDISPATCH pDisp = db.GetVSSItem (sSourceSafeFile, FALSE);
IVSSItem item (pDisp);
if (item.GetIsCheckedOut ())
throw (new CMyAppException ("The file in SourceSafe you specified is already checked out by someone. Make sure it is not checked out before proceeding."));
CComBSTR bstrPath (sOnDiskTargetFile);
item.Get (&bstrPath, VSSFLAG_USERRONO | VSSFLAG_REPREPLACE | VSSFLAG_FORCEDIRNO);
}
catch (COleDispatchException * pE) {
CString sMsg;
pE->GetErrorMessage (sMsg.GetBuffer (MAX_PATH + 1), MAX_PATH);
sMsg.ReleaseBuffer ();
pE->Delete ();
throw (new CMyAppException (sMsg));
}
}
}
Also, have a look at dang!'s VssReporter 1.3. Looks to be pretty useful and right up your alley.
hth!
-ar
|
|
|
|
|
thanks man, that was exactly what i needed!
cheers
Yaron
Ask not what your application can do for you,
Ask what you can do for your application
|
|
|
|
|
YaronNir wrote:
I know i can communicate with the visual source safe using command lines....
I want like to do via code the following
So which is it? Do you want command-line syntax, or code?
|
|
|
|
|
sorry, i guess my request was a lit ambiguous......
i need to communitcate with the source safe api meaning i want to use code...
can u help?
thanks
Yaron
Ask not what your application can do for you,
Ask what you can do for your application
|
|
|
|
|
Alexander's suggestion is the way to go.
|
|
|
|
|
Hi everyone,
I am 15 and would like to start programming. I have read all summer about VC++ and started to code in my spare time.
I have a really simple question about pointers. I just don't know how to do it.
How would I pass a pointer to a class to another class in the same project? I have class1 and want class2 to have access to class1's stuff. I hear that I just need a pointer to class1 in class2.
can someone help me?
|
|
|
|
|
Hello,
You can do this:
In class 1 add the next variable:
Class1
{
Class2 * m_pClass2;
};
Class2
{
};
if you also want to have acess to private and protected members add the following to Class1:
friend class Class2;
hope this helps
A student knows little about a lot.
A professor knows a lot about little.
I know everything about nothing.
|
|
|
|
|
Hi,
thanks for the help.
Does this work if the 2 classes are in different .cpp files? where exactly would this friend stuff go?
thanks again
|
|
|
|
|
The classes should be in header files!
exemple:
class a
{
public:
void somefunc();
};
void a::somefunc()
{
}
But it will work if the 2 classes reside in other files!
If you make a class fiend of an other class, That class has access to the private and protected members of that class:
exemple:
class a
{
private:
int nPrivateInt;
public:
int nPublicInt;
};
class b
{
public:
friend class a;
void somefunc()
{
a InstanceOfa;
InstanceOfa.nPrivateInt = 0;
}
};
a InstanceOfA;
InstanceOfA.nPrivateInt = 0;
InstanceOfA.nPublicInt = 0;
Hope this makes thing clear!
A student knows little about a lot.
A professor knows a lot about little.
I know everything about nothing.
|
|
|
|
|
Class1 instanceOfClass1;<br />
Class2 instanceOfClass2;<br />
<br />
instanceOfClass2.m_ptrToClass1Object = &instanceOfClass1;
/ravi
Let's put "civil" back in "civilization"
Home | Articles | Freeware | Music
ravib@ravib.com
|
|
|
|
|
Hello,
thank you for helping me.
Where would all of this go? I am lost.
|
|
|
|
|
Suppose you have the following:
<br />
class ClassB<br />
{<br />
public:<br />
void ActionB();<br />
};<br />
<br />
class ClassA<br />
{<br />
public:<br />
ClassB* m_pB;<br />
void ActionA();<br />
};
Then you can access ClassB from ClassA using the following:
<br />
ClassA a;
ClassB b;<br />
<br />
a.ActionA();
<br />
a.m_pB = &b;
a.m_pB->ActionB();
This is just one of many ways of doing this. The situation dictates what you actually implement. You need to learn about objects, instances, pointers, call by value, call by reference and lots of other concepts. I suggest you get yourself a good C++ book.
Lorenz Prem
Microsoft Corporation
|
|
|
|
|
I have a small image editing application that is written without MFC, you access all the commands through menus, but I want to add a toolbar with various buttons (and link each button to a menu command), I know I can insert a toolbar in Resource Editor, but I want to know what code do I need to add (and where) so the toolbar would actually come up when I build and execute the application... Please, ANY help would be greatly appreciated. Thanks.
|
|
|
|
|
Look up CreateToolbarEx to get the SDK version up and running.
You'll have to load the Toolbar resource yourself and parse it into an array of TBBUTTONS,
but that shouldn't be too hard. Off the top of my head you use LoadResource (..., RT_TOOLBAR, ...).
Unless someone wants to correct me, its not a complex job, just a bit lengthy.
Iain.
|
|
|
|