Not much said, look at the code should understand, once I encountered problems, now let everyone share!
Here is the part of the engineering document:
Encapsulating an MDI child form in a DLL requires you to override the DLL entry function, as shown in the following code:
1var 2 DllApp: TApplication;//定义保存原DLL的TApplication对象 3 DllScr: TScreen;//定义保存原DLL的TScreen对象 4 5procedure UnProcDll(Reason: Integer); register; 6//重新定义DLL入口函数 7begin 8 if Reason
Continue to the previous section, we still create an MDI window with the project file. The code is as follows: ProgramMdiapp;usesWindows, Messages;varthemessage:tmsg; Framewindow,clientwindow,childwindow:hwnd;ConstIdchildwnd= -; //First MDI child window ID{$R *. RES}//callback functionfunctionFramewindowproc (Theframewindow:hwnd; Themessage,wparam,lparam:longint): Longint;stdcall;varclientstruct:tclientcrea
"When you open a child window body in MDI mode, you always cannot maximize the display, and the windowstate of the Subwindow body is set to maximized?" ", I believe a lot of people will encounter this kind of problem, please use the following method to set the MDI child form to maximize:1. Set the IsMdiContainer of the parent form to true;2, the WindowState of the form is set to normal;3. Open the subform i
My brother started the project a few days ago and used vb.net for the first time. I believe that many beginners will encounter these problems more or less. For the convenience of learning for beginners, I have summarized some small experiences for your reference and discussion.Article 1: How to control attributes of the parent form in the MDI child formFunction: for example, after opening a child form, you must set a menu item or button in the parent
VCType
: It features
MDI
ProgramWhen the mode dialog box is opened (for example, the file dialog box is opened), the file that is double-clicked in resource manager is not opened;
UltraeditType
: It features
MDI
When the program opens the mode dialog box, the file that is double-clicked in resource manager is still opened;
WordType
: It features
MDI
# Region adds background to the MDI parent form and solves the problem of blinking// 1. Add a background image named "backgroundimage" to properties/resources. resx.
// 2. Add backgroundnosplash () in the following locations ();
Public frmmain (){
Initializecomponent ();
// Add background to the MDI parent form and solve the problem of blinkingBackgroundnosplash ();
}
// The followingCo
What should I do if the panel on the MDI main form overwrites the child form? Development and Application of VCL Components
Http://www.delphi2007.net/DelphiVCL/html/delphi_20061222144928188.html
What should I do if the panel on the MDI main form overwrites the child form?
The main form uses the fsmdiform type, and the child form uses the fsmdichild type.
When a widget is placed in a panel, the child f
In the middle of the project encountered an MDI window inside the border problem, after hard to find, and finally got the solutionCalling the API in the main form //Win32 Constants Private Const intGwl_style =- -; Private Const intGwl_exstyle =- -; Private Const intWs_border =0x00800000; Private Const intWs_ex_clientedge =0x00000200; Private Const UINTSwp_nosize =0x0001; Private Const UINTSwp_nomove =0x0002; Private Const UINTSwp_nozorder =0x0
Analysis on the Cause of a pop-up menu warning in the MDI ProgramAuthor: laomaiWeb: http://blog.csdn.net/laomai(Indicate the source when reprinting)I. IntroductionRecently, I was compiling an MDI program code. When debugging the program, the output window of vc6 implemented a prompt."Warning: getwindowmenupopup failed! "In order to find out the cause of this warning, I checked a lot of information and caref
Many friends hope that the MDI child form will not be opened repeatedly. If the child form has been created, activate it instead of creating another MDI child form, in fact, the MdiChildren attribute provided by C # can solve this problem. Let's assume a treeview control and click the corresponding node on the treeview to create an MDI subform named after this no
Q:mdi How does the parent form send data to a subform, generally? A: For the most common MDI window, WinForm provides form.mdichildren this property in the properties of the form class to return all child windows.So we just inherit the form class and use this class to create a new child window.public class Mychildform:form{}Then, the Mdichildren property is used to get the child window, call the public method defined in the child window class, or the
One, MDI form container:1. Function:It allows the other form to open inside it and cannot exceed its scopeSet the properties of a form: IsMdiContainer to true-window style2. Questions:(1) How do I open the other form inside it?The name of the form object. MdiParent = this;(2) How do I maximize properties when I open a form?Set maximized properties with code before instantiating a Form object, showNote: The WindowState property of the form must be the
DLL encapsulation of MDI child forms is a common software development technology, which has the following advantages:
Personnel can write a module, including (interface + logic), without interfering with each other. After the module is developedProgramUnified Call.Program upgrade: when the program is upgraded, you can update a DLL without compiling the main EXE file. Different modules can be provided to customers based on their different needs and
"When a child window is opened in the MDI mode, the display cannot be Maximized. It is clear that the WindowState of the child window is set to Maximized ?", I believe many people will encounter this problem. Set the following method to maximize the MDI subform:
1. Set IsMdiContainer of the parent form to True;2. Set the WindowState of the subform to Normal;3. In the parent form, use the following method t
Tangram commercial version Preview (2): tabbed MDI Interface
The purpose of the commercial version of Tangram is to allow users to directly obtain a highly customizable commercial software framework without writing program code using XML descriptions. In fact, some code in the software framework is basically unrelated to the functions of the software. Just like a high-end office building, it can only improve your identity. Therefore, A descriptive an
Use the MDI form in Delphi. The project file is as follows:
Application. initialize;Application. createform (tmainform, mainform );Application. createform (taboutbox, aboutbox );Aboutbox. show;Aboutbox. Hide;Mainform. showmodal;Application. Run;
If the order of creation of aboutform and mainform is reversed, opening an mdichild form in the main form will result in the following error.
Can not create form, no
It is very easy to make the MDI form in VB. This is not easy in C #, but it is very convenient.
First, add a form in C #, name it mdimain, and set ismdicontainer to true, so that the MDI main form is created. Then add a new form named mdichild. Run nowProgramOnly the mdimain form is running. Because we didn't write anythingCodeOf course, the second form cannot appear. Add this code now.
Add a menu on the
In my "MDI form mutual call 1" article, I have explained how to make the MDI windows call each other.
However, the method used in the previous article uses the basic features of the "reference type". In the following method, I use the class definition to complete the above functions. In general, I do not approve of your use of the second method. The second method mentioned here is just to be discussed with
Reproduced to: http://blog.csdn.net/henreash/article/details/7618414
Qt provides the mdiarea control to easily implement standard MDI forms, but it is not convenient to use. it seems that it is better to switch the subform through the tab like the 360 browser. click the menu item or the button on the toolbar to create a new tab and generate a subform. click the cross sign on the tab to close the tab and release the child form object. to implement this
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.