ZKX's LAB

【求助】关于VB.NET中MDI窗体类型的问题 mdi 自定义窗口

2021-03-08知识5

【求助】关于VB.NET中MDI窗体类型的问题

vb,关于MDI子窗体调用其父窗体的问题

谁能告诉我下面的图中采用的是那种方式:SDI、MDI还是自定义的?如何实现 MDI,tabfolder或自定义

VB窗体的窗体的属性及说明: (Name)窗体的名称ActiveControl 返回焦点所在的控件,该属性设计阶段不可用,运行时只读。Appearance外观效果,取值为:0 平面1 3D(立体)AutoRedraw是否自动刷新或重画窗体上所有图形[获得或设置从绘图(graphics)方法到一个持久性位图的输出],取值为:TrueFalseBackColor 背景颜色,可从弹出的调色板选择。BorderStyle设置边界类型,取值为:0 None(无边界框架)1 FixedSingle(窗口大小固定不变的单线框架)2 Sizable(窗口大小可变的标准双线框架)3 FixedDialog(窗口大小固定的对话框窗体)4 FixedToolWindow(窗口大小固定的工具箱窗体)5 Sizable ToolWindow(窗口大小可变的工具箱窗体)Caption 窗体的标题ClipControls决定Paint 事件的graphics 方法是重画整个对象,还是重画新显示的区域。取值为:True 或FalseControlBox是或有控制框,取值为:True 有False 无DrawMode设定窗体上绘图(graphics 方法),Shape,Line 等控件的输出外观,有16 种可选:1 黑色2 非或笔,设置值15 的反相3 与非笔,背景色以及画笔反相二者共有颜色的组合4 非复制笔,设置值13 的反相5 与笔非,画笔以及显示色反相二者共有颜色的组合6 反相,显示颜色反相7 异或笔,画笔。

mdi窗体菜单的索引是什么啊 MDI(多文档接口)窗体可作为应用程序背景的窗口,也是其 MDIChild 属性设置为 True 的窗体的容器。一个应用程序只能有一个 MDIForm 对象,但是可以有多个 MDI 子窗体。如果 MDI 子窗体有菜单,那么,当 MDI 子窗体为活动窗体时,子窗体的菜单条自动取代 MDIForm 对象的菜单条。最小化的 MDI 子窗体以图标形式出现在 MDIForm 中。MDIForm 对象只包含 Menu 和 PictureBox 控件以及具有 Align 属性的自定义控件。为了把其它的控件放入 MDIForm,可以在窗体上绘制一个图片框,然后在图片框中绘制上其它控件。可以在 MDIForm 的图片框中使用 Print 方法显示文本,但是不能在 MDIForm 自身使用该方法显示文本。

VC MDI子窗体怎么创建,我创建完的子窗体怎么能让主菜单发生变化,而且窗口的菜单项可以激活这个窗口? 在窗口销毁函数里面删除添加WM_DESTROY 消息响应函数CMyFrame:DestroyWindow(){m_pMyview->;CloseWindow();delete m_pMyview;}你最好可知以在初始化道时将m_pMyview=NULL;在在程序运行中可以根据需要判断窗口是否已经创建。主菜单就是在CmainFrame里添加IDM_TEST消息响应ON_COMMANDm_pMyframe是与版m_pMyview相连的,只要m_pMyview关闭了,权相应的资源就释放掉了,就像CMainFrame*pMainFrame=new CMainFrame;同样不需要手动删除。

mdi中新建一个view类,为什么是抽象类 在mdi中,我想同使一种Doc 类 与 多 个View 类 相 关 联,就是运行时先产生一个子窗口,在这个子窗口中单击菜单又可以新产生一个子。

【求助】关于VB.NET中MDI窗体类型的问题 mdi 自定义窗口

Form窗体与MDI窗体

vc MDI子窗口标题丢失 在 CDocument*pNewDoc=new CDocument();后面添一句pNewDoc->;SetTitle(_(str));然后再看看。分析如下:当子窗口由非活动转为活动时,MFC的CMDIFrameWnd类会自动调用e799bee5baa6e79fa5e98193e78988e69d8331333239303165OnUpdateFrameTitle(BOOL bAddToTitle)函数,在函数体中可以发现这样一句判断语句并进入:if(bAddToTitle&(pActiveChild=MDIGetActive())。NULL&(pActiveChild->;GetStyle()&WS_MAXIMIZE)=0&(pDocument。NULL|(pDocument=pActiveChild->;GetActiveDocument())。NULL))最后执行UpdateFrameTitleForDocument(pDocument->;GetTitle());关键是最后一句会调用pDocument->;GetTitle(),由于新的文档没有标题,导致CMDIFrameWnd也没有标题了!调试技巧:遇到问题后,知道了大概是在WM_ACTIVATE这块消息的处理时,MFC肯定内部会做处理,因此我们必须查看MFC内部是如何在子窗口得到WM_ACTIVATE时是如何处理的,可以重载这个消息处理函数,并在函数体中调用基类的这个消息处理函数,这样做的目的是方便设断点!设置了断点,然后鼠标单击新创建的窗口,使该断点触发,再通过VC菜单-调试》逐语句或逐过程,来跟踪MFC的基类代码。最后定位到“void CMDIFrameWnd:。

#mdi 自定义窗口

随机阅读

qrcode
访问手机版