|
Help, I've got a static picture control on a formview and I keep sizing the picture to the size I want but it comes up in the static control a little bit smaller.
Could this have to do with the pixels/inch (just guessing)?
Any help would be greatly appreciated.
Thanks in advance.
|
|
|
|
|
Why don't you just blt the picture yourself ? The 'bit smaller' is probably the frame of the control ( about 8 pixels ? ).
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
Hi all,
I wrote this code but won't work !
wnd_Toolbar.CheckRadioButton(IDC_BUTTON1, IDC_BUTTON8, IDC_BUTTON5);
How can i solve it ?
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
Correct me if I'm wrong but there's no such function in CToolbar, according to MSDN.
Is this a doc/view app? If so, then you should use the UI handlers to enable/disable/check/uncheck menu items and toolbar buttons. Search for ON_UPDATE_COMMAND_UI in the MSDN for more info.
Regards,
Alvaro
|
|
|
|
|
Hi,
Thanks for responsing !
Now, my problem is solved ...
But thanks for your hints
My month article: Game programming by DirectX by Lan Mader.
Please visit in: www.geocities.com/hadi_rezaie/index.html
Hadi Rezaie
|
|
|
|
|
How to display the "Synchronize" dialog???
|
|
|
|
|
Which dialog ?
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
The "Synchronize" Dialog is at menu of IE|Tools. The dialog synchronize the offline page with the web's.
Thanx
|
|
|
|
|
Looks owner drawn to me.
It sure isn't a common dialog, I doubt you'll get hold of it, although you might through an IE COM object.
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
Have you found an answer; I'm interested also.
klefton@dwfritz.com
|
|
|
|
|
I used app wizard to build a dialog box to display the command line. The app wizard built two classes, test.cpp and testdlg.cpp. I added Carlos Antollini's command line class and using debug I can see the command line value in the test.cpp class(InitInstance) but can not figure how to get the value into the testdlg.cpp class. I have built an edit window and can use UpdateData() to put a value in to it.
Any help would be greatly appreciated.
|
|
|
|
|
From the dialog you can call the application class to get the string.
CString m_EditStr = AfxGetApp()->m_lpCmdLine;
I would however add a function to the application class to return this string.
Happy programming!!
|
|
|
|
|
Hello all,
I am writing an MFC app for a college project.
I have some code that opens & saves files (not using serialization).
When I open a file (.gbc) it is read in and parsed, objects are created (Notes, Chords, Bars, Tablines) based on these values, but I dont know how to create a new view or doc to display these objects.
Can someone help me please ?
My open code is in MainFrame.cpp and works wonderfully, except I can open 5 files but only have the one original document open ?
Rob
|
|
|
|
|
You should place your load/save code into the Document class, regardless of if you use serialisation or your own code. If you put it in the mainframe, you're going to be fighting doc/view all the way. If you set things up so your view displays the info in your document class, which loads and saves it, using your existing code, and let OnFileNew/OnFileOpen/OnFileSave do their default thing of creating instances of views/documents, you'll find life a lot easier.
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
Thanks Christian,
I'll try moving my code into the doc.
One thing I am baffled on is how the default view/doc is created ?
When I open one of my files, i can parse the data, but i can make a view to display the objects I have just made ?
I found some code to do this, but keep getting errors. If you were going to open a file, parsing it and then make a new view, how would you do it ?
Rob
|
|
|
|
|
Opening a document also creates a view to go with it.
To open a document from the mainframe class ( which I do to impliment a file browser ), I do this
AfxGetApp()->OpenDocumentFile(Dlg.m_Path);
where m_Path is a member variable of the browser dialog, containing the path to load
In my document class I override OnFileOpen and call it in the CWinApp derived class, which looks like this:
CDocument* CMyApp::OpenDocumentFile(LPCTSTR lpszFileName)
{
CFileStatus fs;
if (!CFile::GetStatus(lpszFileName,fs))
{
CString s;
s.Format("Error - file %s not found",lpszFileName);
AfxMessageBox(s,MB_ICONERROR);
return NULL;
}
try
{
CDocument* pReturn = CWinApp::OpenDocumentFile(lpszFileName);
CMyDoc* pDoc = (CMyDoc*)pReturn;
pDoc->m_Filename = lpszFileName;
return pReturn;
}
catch(...)
{
return NULL;
}
}
I seem to recall this was because it's a MDI app, so it called the method in CWinApp if I had nothing open, otherwise it called it in the document class.
This calls OnOpenDocument in my document class, where I simply load my data into the class and return TRUE. This gives me a document and the view associated with it.
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
Hi Christian,
Thank you very much for your help. Here is my code from my Mainfrm.cpp
// i select a file to load from the load dialog pop up
void CMainFrame::OnFileOpen()
{
CFileDialog dlg (TRUE, _T ("gbc"), _T ("*.gbc"),
OFN_FILEMUSTEXIST | OFN_HIDEREADONLY, m_szFilters);
if (dlg.DoModal () == IDOK &&
LoadFile(dlg.GetPathName())) {
m_strPathName = dlg.GetPathName ();
}
}
// i load the file, and pass each line to a parser class, thus creating my objects
BOOL CMainFrame::LoadFile(LPCTSTR pszFile)
{
BOOL bResult = FALSE;
FileParser fp;
try {
CStdioFile file (pszFile, CFile::modeRead);
CString string;
file.ReadString (string);
// if the string has a length
if (string.Compare("EOF") != 0) {
//fp.ParseString(string);
} else {
// if string is NULL then return
return TRUE;
}// end if
MessageBox("need to create a view...");
// at this point i need to create a view to display my objects, so they can be drawn in this view ?
bResult = TRUE;
}
catch (CFileException* e) {
e->ReportError ();
e->Delete ();
}
return bResult;
}
From the code you previously posted, I'm not sure which code will create a view ?
|
|
|
|
|
Creating a new document creates the view associated with it also.
Christian
After all, there's nothing wrong with an elite as long as I'm allowed to be part of it!! - Mike Burston Oct 23, 2001
|
|
|
|
|
WOOT ! I think I understand this ! Okay, one more question.
I see your OpenDoc() return a CDocument, which I cast into my view type and then use.
1. I am assuming that I will have to get this specific doc in order to put values into it. If I am going to have multipl views opnen at one time, Should I put a pointer to each doc into an array, so I can find it easily ?
How would you go about this ?
Many, many, many thanks,
Rob
|
|
|
|
|
Why HeapFree() is slower then free() about 200 times in Windows98?
In Win2000 all right.
|
|
|
|
|
The dialogs and dialog bars create the controls based on the selected font during creation. Is there any way to dynamically reposition/resize all controls and the dialogbar, when the font is changed?
I am now able to do it only before creation.
Thank you
Thomas
modified 29-Aug-18 21:01pm.
|
|
|
|
|
Hi,
I use the Video For Windows function AVIStreamGetFrame which returns a Packed DIB.
I then convert it to a DDB using the following code fragment:
HDC hDc=GetDC(NULL);
BITMAPINFOHEADER* bminfoheader;
BITMAPINFO* bminfo;
LPVOID bits;
bminfoheader=(BITMAPINFOHEADER*)lpbi;
bminfo=(BITMAPINFO*)lpbi;
bits = bminfoheader->biSize + (char *)lpbi;
HBITMAP hbitmap = CreateDIBitmap(hDc, bminfoheader, CBM_INIT, bits, bminfo, DIB_RGB_COLORS);
My concern is the colour usage parameter in createDIBitmap, could there be a situation where AVIStreamGetFrame returns a image which uses DIB_PAL_COLORS.
Would DIB_PAL_COLORS have any effect on calls to GetPixel and SetPixel, when the image is selected into a device context.
Thanks Again
Richard
|
|
|
|
|
I use createprocess() to execute "notepad" in my application.
I want to show .txt file in it.How can I do this?
|
|
|
|
|
Depending on how you use CreateProcess() there's different ways to do it. In one of the parameters you write something like notepad.exe , just write notepad.exe c:\\test.txt or whatever you call your document then notepad should open it...
- Anders
Money talks, but all mine ever says is "Goodbye!"
|
|
|
|
|
I used this code:
STARTUPINFO si;
PROCESS_INFORMATION pi;
memset (&si, 0, sizeof (STARTUPINFO));
memset (&pi, 0, sizeof (PROCESS_INFORMATION));
si.cb = sizeof (STARTUPINFO);
si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;
si.wShowWindow = SW_SHOW;
CreateProcess("c:\\WINDOWS\\notepad.exe c:\\My Documents\\test.txt",NULL,NULL,NULL,NULL,
CREATE_DEFAULT_ERROR_MODE,NULL,NULL,&si,&pi);
????It doesn't work?
|
|
|
|