Problem inserting ocx into customized dialog template..
Syed -- sxs296@psu.edu Sunday, December 01, 1996 Environment: Visual C++ 4.0, Win95 I have an ocx which I have been trying to insert to a dialog template of a customize file open dialog (common dialog). The problem is the customized open dialog simply refused to come out and whenever I remove that ocx from the dialog template, the problem just dissappear. I however, have no problem at all with other dialogs. I suspect that this is due to the fact that file open dialog is fired from win95's kernel library and therefore, uninformed of the ocx existance. Is my assumption correct..?? I don't really know. Can someone please tell me what's wrong with this.? I followed this method to develop my customized open dialog. First, I create a dialog template and then along with the requirement for the file-open template (like a static with id stc32), I put an OCX and several other controls. Then, using class wizard, I create an appropriate class derived from CFileDialog and override the DoModal member function as follow:- int CFileOpenExDlg::DoModal() { SetTemplate(NULL, MAKEINTRESOURCE(IDD)); return CFileDialog::DoModal(); } Now, again the dialog will never get displayed unless I remove that OCX which is obviously, not I want. Thanks for all answers. Really appreciate them.
Alexander Gavrilov -- Alexander_Gavrilov@esicorp.com Tuesday, December 03, 1996 I think the problem might be that you need AfxEnableControlContainer() in InitInstance() of your application. This line is automatically generated by AppWizard if you choose OLE Controls support. >Environment: Visual C++ 4.0, Win95 >I have an ocx which I have been trying to insert to a dialog template of a >customize file open dialog (common dialog). The problem is the customized >open dialog simply refused to come out and whenever I remove that ocx from >the dialog template, the problem just dissappear. I however, have no >problem at all with other dialogs. I suspect that this is due to the fact >that file open dialog is fired from win95's kernel library and therefore, >uninformed of the ocx existance. Is my assumption correct..?? I don't >really know. Can someone please tell me what's wrong with this.? >I followed this method to develop my customized open dialog. >First, I create a dialog template and then along with the requirement for >the file-open template (like a static with id stc32), I put an OCX and >several other controls. Then, using class wizard, I create an appropriate >class derived from CFileDialog and override the DoModal member function as >follow:- >int CFileOpenExDlg::DoModal() >{ >SetTemplate(NULL, MAKEINTRESOURCE(IDD)); >return CFileDialog::DoModal(); >} >Now, again the dialog will never get displayed unless I remove that OCX >which is obviously, not I want. >Thanks for all answers. Really appreciate them. Alexander Gavrilov alexander_gavrilov@esicorp.com
Syed -- sxs296@psu.edu Friday, December 06, 1996 [Mini-digest: 2 responses] At 02:56 PM 12/3/96 -0600, you wrote: >I think the problem might be that you need AfxEnableControlContainer() in >InitInstance() of your application. This line is automatically generated by >AppWizard if you choose OLE Controls support. > > > >>Environment: Visual C++ 4.0, Win95 > >>I have an ocx which I have been trying to insert to a dialog template of a >>customize file open dialog (common dialog). The problem is the customized >>open dialog simply refused to come out and whenever I remove that ocx from >>the dialog template, the problem just dissappear. I however, have no >>problem at all with other dialogs. I suspect that this is due to the fact >>that file open dialog is fired from win95's kernel library and therefore, >>uninformed of the ocx existance. Is my assumption correct..?? I don't >>really know. Can someone please tell me what's wrong with this.? >>I followed this method to develop my customized open dialog. >>First, I create a dialog template and then along with the requirement for >>the file-open template (like a static with id stc32), I put an OCX and >>several other controls. Then, using class wizard, I create an appropriate >>class derived from CFileDialog and override the DoModal member function as >>follow:- >>int CFileOpenExDlg::DoModal() >>{ >>SetTemplate(NULL, MAKEINTRESOURCE(IDD)); >>return CFileDialog::DoModal(); >>} >>Now, again the dialog will never get displayed unless I remove that OCX >>which is obviously, not I want. >>Thanks for all answers. Really appreciate them. > Nope.. it's already there in my InitInstance. As I said earlier, I have no problem with other dialog; it performs flawlessly.. -----From: Logan GilbertYou can also add control containment support to you app by simply = chossing Insert->Component on the menu bar of VC++ 4.x to bring up the = Component Gallery. Select the Microsoft Tab and choose OLE Control = Containment to add Containment ability to your app. This way you don't = have to create an new app using the AppWizard. It adds = AfxEnableControlContainer() to you InitInstance() of your application, = AND it adds #include to your stdafx.h file. Obviously you = could do this manually. It does sound like this could be the problem. If you so choose to create a new app which you know will use controls = you can select OLE controls support in the AppWizard as stated in the = previous answer. =20 Logan ---------- From: Alexander Gavrilov Sent: Tuesday, December 03, 1996 2:56 PM To: mfc-l@netcom.com Subject: Re: Problem inserting ocx into customized dialog template.. I think the problem might be that you need AfxEnableControlContainer() = in=20 InitInstance() of your application. This line is automatically generated = by=20 AppWizard if you choose OLE Controls support. >Environment: Visual C++ 4.0, Win95 =20 >I have an ocx which I have been trying to insert to a dialog template = of a=20 >customize file open dialog (common dialog). The problem is the = customized=20 >open dialog simply refused to come out and whenever I remove that ocx = from=20 >the dialog template, the problem just dissappear. I however, have no=20 >problem at all with other dialogs. I suspect that this is due to the = fact=20 >that file open dialog is fired from win95's kernel library and = therefore,=20 >uninformed of the ocx existance. Is my assumption correct..?? I don't=20 >really know. Can someone please tell me what's wrong with this.? >I followed this method to develop my customized open dialog. >First, I create a dialog template and then along with the requirement = for=20 >the file-open template (like a static with id stc32), I put an OCX and=20 >several other controls. Then, using class wizard, I create an = appropriate=20 >class derived from CFileDialog and override the DoModal member function = as=20 >follow:- >int CFileOpenExDlg::DoModal() >{ >SetTemplate(NULL, MAKEINTRESOURCE(IDD));=20 >return CFileDialog::DoModal(); >} >Now, again the dialog will never get displayed unless I remove that OCX = >which is obviously, not I want. >Thanks for all answers. Really appreciate them. =20 Alexander Gavrilov alexander_gavrilov@esicorp.com =20 =20
| Вернуться в корень Архива |