表单上有很多Label,上面有大片的文字,怎么让用户点击表单上任何地方都可以关闭表单?
我在form的click事件里写了关闭的代码,可当用户击击有label的地方就关闭不了。请问有什么好的办法吗?大家在做这种“关于”表单时是怎么处理的?
我在form的click事件里写了关闭的代码,可当用户击击有label的地方就关闭不了。请问有什么好的办法吗?大家在做这种“关于”表单时是怎么处理的?
解决方案 »
- 万人难遇的一个Textbox控件代码错误
- 奇怪的toolbar按钮问题,请朋友们帮忙诊断一下!
- comtext中显示房间号,lstname2中不显示所选房间号的姓名,还有另一个问题txtin.Text = guest1(int1).dtmin,txtout.Text = guest1(int1).dt
- 如何将VB中的datagrid数据导出excel,word中去???
- 请教:在VB中如何用IE打开一个网页,而且要求这个窗口没有菜单、工具栏!
- 轻松创建不规则窗体(任意形状)!!
- 调用函数出错
- 请问 StrConv() 的用法?
- 关于VB 调用DLL文件 ?,急急急!!!!!!~~~~~~~~~~~~~~~~~~~~
- 可不可以在 VB 中动态产生 COM 接口?
- 关于datagrid
- 如何实现类似QQ聊天窗口的显示聊天记录的功能,(能显示文本和图片,GIF等)
http://www.codesky.net
但好的程序是不会遇到这种问题的,因为,这样窗体将也不再响应其它非Label控件(如TextBox等)的事件了。高级一点:所有文本通过Print或API输出到窗体,最为常用,资源占用最小也最方便实现你的需求。
简单一点:用控件数组,可以统一写一个事件。既然,你现在很难再改设计,我也给你一个通用的补救办法,可满足大多数情况,即自动将Label转为Print输出(高级一点的方法^_^)Private Sub Form_Click()
Unload Me
End SubPrivate Sub Form_Load()
Dim lbl As Label, fnt As StdFont, fc As Long
AutoRedraw = True
Set fnt = Me.Font
fc = Me.ForeColor
For Each lbl In Me.Controls
With lbl
If .Visible Then
.Visible = False
CurrentX = .Left
CurrentY = .Top
Set Font = .Font
ForeColor = .ForeColor
Print .Caption
End If
End With
Next
Set Font = fnt
ForeColor = fc
End Sub