单文档(SDI)和多文档(MDI)

2023-11-07 14:11
文章标签 文档 sdi mdi

本文主要是介绍单文档(SDI)和多文档(MDI),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在 Windows 中,文档分为单文档(SDI)和多文档(MDI)两种,如我们熟悉的“记事本”就是一个典型的单文档程序,它最明显的特点是一次只能打开一个文件,当新建一个文件时,当前文件自动被替换掉。

多文档界面,如 Word ,允许用户同时打开多个文件进行操作。在多文档界面中,有一个窗体叫做主窗体(又称为 MDI 窗体),其他窗体称为子窗体。子窗体始终处在主窗体内部,主窗体的位置移动会导致子窗体的位置发生相应变化。如图一:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图一

一、多文档程序的建立:
多文档程序至少有两个窗体,一个主窗体和一个子窗体或多个子窗体,主窗体是其他窗体的容器。

1、创建一个新工程,然后选择工程/工程属性菜单命令,加入如图二的主窗体:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图二

2、在“项目”窗口中双击 Form1 切换到 Form1 ,然后将其 MDIChild 属性设为 True ,如图三:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图三

3、按 F5 键运行程序,结果如图四:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图四

4、控制程序的打开状态:
如果要让程序打开时自动载入 Form1 窗口,那么在如图五的工程属性窗口中选择“启动对象”为 Form1 ;如果不想显示子窗体,那么只需在“启动对象”中选择 MDIForm1 就行了。

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图五

5、子窗体的显示:
假设工程的启动对象为 MDIForm1 ,那么如何显示子窗体 Form1 呢?

可以在主窗体中加入菜单,或者直接用 Load 的方法,如下:

Private Sub MDIForm_Load()
Form1.Show 0
End Sub

这段代码将 Form1 显示出来,并呈非模态模式。

二、主窗体与子窗体的标题:
当主窗体与子窗体都呈显现状态时,把子窗体最大化,你会发现窗体的标题变成了主窗体标题加上子窗体标题,如图六:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图六

三、主窗体与子窗体的菜单:
在 VB 中,如果子窗体载入,那么主窗体的菜单将被子窗体的菜单替换;只有当主窗体中没有子窗体时才能显示主窗体的菜单,如图七、图八、图九、图十:

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图七

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图八

VB教程第二十三课 - 爱水人 - “小水花”信息教学博客
图九

这篇关于单文档(SDI)和多文档(MDI)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/364163

相关文章

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

浅析如何使用Swagger生成带权限控制的API文档

《浅析如何使用Swagger生成带权限控制的API文档》当涉及到权限控制时,如何生成既安全又详细的API文档就成了一个关键问题,所以这篇文章小编就来和大家好好聊聊如何用Swagger来生成带有... 目录准备工作配置 Swagger权限控制给 API 加上权限注解查看文档注意事项在咱们的开发工作里,API

SpringBoot3集成swagger文档的使用方法

《SpringBoot3集成swagger文档的使用方法》本文介绍了Swagger的诞生背景、主要功能以及如何在SpringBoot3中集成Swagger文档,Swagger可以帮助自动生成API文档... 目录一、前言1. API 文档自动生成2. 交互式 API 测试3. API 设计和开发协作二、使用

基于C#实现将图片转换为PDF文档

《基于C#实现将图片转换为PDF文档》将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片,所以本文将介绍如何使用C#将JPG/PNG图片转换为PDF文档,需要的可以参考下... 目录介绍C# 将单张图片转换为PDF文档C# 将多张图片转换到一个PDF文档介绍将图片(JPG、PNG)转

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

Python脚本:TXT文档行数统计

count = 0 #计数变量file_dirs = input('请输入您要统计的文件根路径:')filename = open(file_dirs,'r') #以只读方式打开文件file_contents = filename.read() #读取文档内容到file_contentsfor file_content in file_contents:

bcolz文档

原文:http://bcolz.blosc.org/en/latest/reference.html First level variables bcolz.__version__'''bcolz包的版本。''' bcolz.dask_here'''是否检测到dask的最低版本。''' bcolz.min_dask_version'''需要dask的最低版本(dask是可选

WordPress开发中常用的工具或api文档

http://php.net/ http://httpd.apache.org/ https://wordpress.org/ https://cn.wordpress.org/ https://core.svn.wordpress.org/ zh-cn:开发者文档: https://codex.wordpress.org/zh-cn:%E5%BC%80%E5%8F%91%E8%80%

Python知识点:使用Python进行PDF文档处理

使用 Python 进行 PDF 文档处理可以通过多种库来实现,包括 PyPDF2、pdfplumber、reportlab、pdfminer 等。这些库可以处理不同的 PDF 任务,例如 提取文本、拆分合并 PDF、修改 PDF、生成 PDF 等。以下是几种常见操作及对应的库和代码示例。 1. 安装常用库 首先,安装常用的 PDF 处理库: pip install PyPDF2 pdfpl