注册 登录
编程论坛 VB6论坛

vb按打印后,退出报表预览窗口父窗口中的除打印按钮外其他控件都变紫色了

zkdxn 发布于 2016-05-12 11:44, 1781 次点击
只有本站会员才能查看附件,请 登录
7 回复
#2
zkdxn2016-05-12 11:45
请问各位大侠,这个是什么问题啊!查询窗口其他控件看不到了,只有重新挂壁查询窗口重新进入才可以看到其他控件,是否是报表还有什么部件没有添加进去
#3
xiangyue05102016-05-12 13:14
你这样问别人没法解答,除非正好遇到一样的问题
贴代码或者上传附件吧
#4
zkdxn2016-05-12 13:33
Private Sub mnumz_Click()
    查询窗体.Show 1
End Sub

我把"查询窗体.Show 1“这句话中的1去除就可以正常显示了,不知道是什么原因
#5
hjxlj2016-05-12 13:48
以下是引用zkdxn在2016-5-12 13:33:22的发言:

Private Sub mnumz_Click()
    查询窗体.Show 1
End Sub

我把"查询窗体.Show 1“这句话中的1去除就可以正常显示了,不知道是什么原因


因为这个1表示你要把“查询窗体”显示为模式窗体,意思就是说显示查询窗体后你必须关闭这个窗体才能回到程序的其它窗体。如果不是1而是0,则表示你要把“查询窗体”显示为非模式窗体,就是说当查询窗体显示后,你可以不关闭查询窗体也能够回到程序的其它窗体。
你把这个1删除后,就相当于使用默认值0,即把查询窗体显示为非模式窗体。

[此贴子已经被作者于2016-5-12 13:49编辑过]

#6
zkdxn2016-05-13 10:12
我知道1和0代表的意思,但是不知道为什么这里会影响到部分控件变为背景色而已
#7
hjxlj2016-05-13 18:08
以下是引用zkdxn在2016-5-13 10:12:18的发言:

我知道1和0代表的意思,但是不知道为什么这里会影响到部分控件变为背景色而已

因为模式窗体会阻止程序的其它窗体接收消息,特别是Paint消息。而这个消息恰恰又是优先级最低的,这样当模式窗体关闭时,就有可能程序的其它窗体和窗体上的控件不能获得这个消息,自然也就不能重新绘制自己,造成了自己的显示颜色不正常。
#8
wurongqi2017-12-08 15:16
高手
1