加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

VB备忘录(8) 窗体

发布时间:2020-12-17 08:17:59 所属栏目:百科 来源:网络整理
导读:窗体类型 1、模式窗体与无模式窗体 模式窗体(Style: vbmode),强制获得焦点,并使其它窗体处于“静止”(代码暂停执行),只有模式窗体隐藏或卸载后其它窗体才能缓过气来 2、SDI与MDI MDI父窗体是其它子窗体的容器 添加窗体 工程中添加一个新的窗体 工程中

窗体类型

1、模式窗体与无模式窗体

模式窗体(Style: vbmode),强制获得焦点,并使其它窗体处于“静止”(代码暂停执行),只有模式窗体隐藏或卸载后其它窗体才能缓过气来

2、SDI与MDI

MDI父窗体是其它子窗体的容器



添加窗体

工程中添加一个新的窗体

工程中添加一个已经在其它工程中现存的窗体(若与当前同名,将会提示)



删除窗体

1、先从工程中右击进行“移除”(只是不在工程中,但仍在在工程文件夹中)

2、再从工程文件夹中进行手动删除



窗体样式

仅vbfixedsingle和VBSizable会在任务栏上有图标

BorderStyle只能在设计中设置,不能在代码中设置



窗体图标Icon

属性中设置图标

代码中设置: me.icon=LoadPicture(App.Path & “33.ico”)


窗体的背景图片

属性中设置

代码中设置: object.Picture=LoadPicture(.....)

用剪贴板:vbCFBitmap,vbCFMetafile,vbCFDIB来设置图片格式

me.Picture=Clipboard.GetData(vbCFBitpmap) ' 从剪贴板中取得图片

     SavePicture me.Picture,App.Path & "sd.bmp" '将对象中的图片保存下来


Load 将窗体载入内存(并不显示)

Show 显示窗体,若没载入,会隐形进行载入内存再显示

Hide 隐藏窗体,若未载入,会隐形进行载入内存但不显示

UnLoad 卸载窗体,只是从内存中删除显示部分,代码部分仍在内存中。



Print与FormPrint

前者是在窗体上显示字符等

后者是把窗体上所有东西看作图片发送给打印机,进行打印



MDI窗体

一个工程只能有一个MDI,SDI设置为MDIChildren为真时,就是子窗体。

子窗体如何显示?由MDI控制,其AutoShowChildren设置为真时,表示只要子窗体加载在内存中就可以显示出来,否则不显示。

因此,为真时,子窗体的load与Show功能就相同了。(注意,为真不是运行MDI就显示Child,须在子窗体做加载时才显示)

MDI有菜单,子窗体也可以有菜单,当打开子窗体时,父窗体的菜单 就被子窗体的菜单替换。一旦关闭子窗体,父窗体的菜单又会回归出来。

MDI窗体上只能放置具有Alignment属性的控件(图片框,工具栏,任务栏等)和具有不可见的控件(计时器、通用对话框等)

其它的文本框、按钮等不能放置。 要放的话,可先在MDI中放图片框,其它控件可放在其中。

同样MDI不能用Print方法

MDI好像是生成了很多子窗体,这些子窗体可以样式各异。

实际上,子窗体并不能用代码来控制,即只能在设计中把样式设计好。运行时,再调用。相当于起到模板作用。这个意义上子窗体好像是万物主,而不是父窗体。

从前面的作用看来,父窗体类似中国式父母,他们为子窗体打好基础,撑好伞,实际起作用的还是子窗体。

所以子窗体的模板很重要,可以由它生成很多的子窗体。格式如下:

dim frmVar as New frmChild ' 由子窗体模板frmChild生成一个新窗体frmVar

frmVar.Show ' 显示生成的新窗体frmVar

下面是一个由菜单“新建”(New)产生一个新的子窗体的情况:

Private Sub New_Click()
    Dim frm As New Form1
    Static i As Integer
    i = i + 1
    frm.Caption = "无标题" & i
    frm.Show
End Sub

注意,子窗体模板中的控件也会随之生成。一句话,设计中子窗体是什么样子,生成的新子窗体也是什么样子。

运行中若有多个子窗体,当前激活的子窗体可以用 MDIform.ActiveFom来指定这个子窗体。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读