VB用Show方法显示窗体时使用style属性为1,就可使显示的窗体以模式窗体显示。 Show 方法,用以显示 MDIForm 或 Form 对象。不支持命名参数。 说明 如果调用 Show 方法时指定的窗体没有装载,Visual Basic 将自动装载该窗体。
创新互联公司是一家专注于成都做网站、成都网站设计与策划设计,南靖网站建设哪家好?创新互联公司做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:南靖等地区。南靖做网站价格咨询:13518219792
两个显示器显示有两种模式,一种是
双屏
复制,另一种是扩展。
你这个只能用第二种方式。你需要把要在另一个显示器上显示的窗体的Location设置在主显示器全屏时的右边就可以了.其实就是桌面的向右延伸。
在主显示上拖一下窗体就明白了!
1)如上所述的API方法
2)使用System.Draw名称空间中相关类的方法创建一个路径,然后对窗体进行按路径重画即可
VB.NET编写托盘程序
托盘程序作为一类特殊的窗体,其快捷图标显示在
系统托盘
中,窗体本身则隐藏不可见。在.NET之前版本的VB中编写托盘程序是十分困难的,但是VB.NET提供的新的NotifyIcon组件却使VB初学者也能轻松编写一个这样的程序:
新建“Windows应用程序”,设置主窗体Opacity属性为0,FormBorderStyle属性为None,ShowInTaskbar属性为
False,这样窗体将在启动后隐藏。在窗体上放置一个NotifyIcon组件NotifyIcon1,一个ContextMenu(弹出菜单)组件
ContextMenu1,并根据需要为ContextMenu1添加菜单项。
设置NotifyIcon1的ICON属性,这个图标就是应用程序出现在系统托盘中的快捷图标;设置NotifyIcon1的Text属性为“VB.NET托盘程序”,这就是鼠标移动到托盘图标时弹出的文字说明;设置NotifyIcon1的ContextMenu属性为ContextMenu1,也就是右键单击快捷图标时的弹出菜单为
ContextMenu1。OK,按F5运行!
几乎不用编写代码,一个托盘程序就这样轻松实现了。
直接添加一个MID父窗体或在已有窗体的属性中找到IsMDIContainer属性,然后设置为True,然后创建第二个窗体 ,需要加载子窗体的时候:
Dim NewMDIChild As New Form2
NewMDIChild.MdiParent = Me
NewMDIChild.Show()
Public Shared Sub CheckMDIChildForm(ByVal MDIForm As Windows.Forms.Form, ByVal MDIChildForm As Windows.Forms.Form, ByVal MDIChildFormName As String)
If MDIForm.MdiChildren.Length 1 Then
'如果没有任何一个MDI子窗体,则创该MDI子窗体的窗体实例
Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体
MDIChildFrm.MdiParent = MDIForm '指定父窗体
MDIChildFrm.Show() '打开窗体
Exit Sub
Else
Dim x As Integer
Dim frmyn As Boolean
For x = 0 To (MDIForm.MdiChildren.Length) - 1
Dim tempChild As Windows.Forms.Form = CType(MDIForm.MdiChildren(x), Windows.Forms.Form)
If tempChild.Name = MDIChildFormName Then
'检测到有该MDI子窗体,设为激活 并退出循环
frmyn = True
tempChild.BringToFront()
Exit For
Else
frmyn = False
End If
Next
If Not frmyn Then
'在打开的窗体中没检测到则新建
Dim MDIChildFrm As Windows.Forms.Form = MDIChildForm ' 定义MDI子窗体
MDIChildFrm.MdiParent = MDIForm '指定父窗体
MDIChildFrm.Show() '打开窗体
End If
End If
End Sub
如下所示:
Private Sub Type(ByVal sender As Control, ByVal p_1 As Integer, ByVal p_2 As Double)
Dim oPath As New Drawing2D.GraphicsPath()
oPath.AddClosedCurve(New Point() {New Point(0, sender.Height / p_1), New Point(sender.Width / p_1, 0), New Point(sender.Width - sender.Width / p_1, 0), New Point(sender.Width, sender.Height / p_1), New Point(sender.Width, sender.Height - sender.Height / p_1), New Point(sender.Width - sender.Width / p_1, sender.Height), _
New Point(sender.Width / p_1, sender.Height), New Point(0, sender.Height - sender.Height / p_1)}, CSng(p_2))
sender.Region = New Region(oPath)
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Type(Me, 20, 0.1)
End Sub