父窗体和子窗体

wubaiyong 2005-01-17 02:30:19
Private customer As New customer

Private Sub MenuItem14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem14.Click

customer.MdiParent = Me
customer.Show()

End Sub

以上代码是父窗体通过菜单创建并弹出子窗体。要求是只能有一个customer子窗体打开。现在碰到的问题是关闭子窗体,然后在打开子窗体就报错。

请各位帮忙!!!
...全文
203 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
liulxmooo 2005-01-18
  • 打赏
  • 举报
回复
up
hw_lang 2005-01-17
  • 打赏
  • 举报
回复
yikais(随风而至)和 landlordh(software)方法最好!所有的都被他们说完了!学习阿!
hw_lang 2005-01-17
  • 打赏
  • 举报
回复
Private Sub MenuItem14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem14.Click
Private customer As New customer
customer.MdiParent = Me
customer.Show()

End Sub
hw_lang 2005-01-17
  • 打赏
  • 举报
回复

Private customer As New customer这句放到MenuItem14_Click事件中
VodkaZ 2005-01-17
  • 打赏
  • 举报
回复
'最好的解决方法应该是用 "单件模式"
'先照这段试试 ^-^,应该没有问题
-------------------
Private customer

Private Sub MenuItem14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem14.Click
'如楼上所述,使用时才创建
customer=new Customer
customer.MdiParent = Me
customer.Show()
End Sub
'把 private customer放在MenuItem14的事件里来也许更合理一些
FJGoodGood 2005-01-17
  • 打赏
  • 举报
回复
把 Private customer As New customer 改为动态创建!
earlsen 2005-01-17
  • 打赏
  • 举报
回复
Activate
SmallMummy 2005-01-17
  • 打赏
  • 举报
回复
upup
Paradise_heida 2005-01-17
  • 打赏
  • 举报
回复
子窗体的关闭按钮:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Owner.Show()
Me.Dispose()
Me.Close()
End Sub
tengjian1981 2005-01-17
  • 打赏
  • 举报
回复
up
landlordh 2005-01-17
  • 打赏
  • 举报
回复

Public Shared sfrm As serach

sub 123()

If sfrm Is Nothing OrElse sfrm.IsDisposed Then
sfrm = New serach
sfrm.Show()
Else
sfrm.Activate()
End If
...
end sub
yikais 2005-01-17
  • 打赏
  • 举报
回复
Private Sub MnuDptSet_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MnuDptSet.Click
If IsLoad("FrmDptSet") = False Then
Dim Frm_DptSet As New FrmDptSet()
Frm_DptSet.MdiParent = Me
Frm_DptSet.Show()
End If
End Sub

Private Function IsLoad(ByVal StrFrm As String) As Boolean
Dim Frm As System.Windows.Forms.Form
For Each Frm In Me.MdiChildren
If Frm.Name = StrFrm Then
Frm.WindowState = FormWindowState.Maximized
Return True
Exit Function
End If
Next
Return False
End Function

16,721

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧