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

Tabcontrol控件的闪烁问题

发布时间:2020-12-17 08:02:34 所属栏目:百科 来源:网络整理
导读:笔者在开发中发现,当调整窗体中的Tabcontrol控件大小时,如果tabcontrol控件中包含Listbox、DatagridView等较多控件时,易出现Tabcontrol控件不停闪烁的问题,严重影响应用程序的美观。 经过搜索和测试,发现解决办法是在tabcontrol控件所在的窗体添加如下

笔者在开发中发现,当调整窗体中的Tabcontrol控件大小时,如果tabcontrol控件中包含Listbox、DatagridView等较多控件时,易出现Tabcontrol控件不停闪烁的问题,严重影响应用程序的美观。

经过搜索和测试,发现解决办法是在tabcontrol控件所在的窗体添加如下的代码,即可彻底解决Tabcontrol控件的闪烁:

 Dim AntiFlicker As Boolean = False

 Protected Overrides ReadOnly Property CreateParams() As System.Windows.Forms.CreateParams
 Get
 Dim cp As CreateParams = MyBase.CreateParams
 If AntiFlicker Then
 cp.ExStyle = cp.ExStyle Or &H2000000 'Turn on WS_EX_COMPOSITED
 End If
 Return cp
 End Get
 End Property

 '开始调整大小时启用抗闪烁
 Private Sub Form2_ResizeBegin(sender As Object,e As System.EventArgs) Handles Me.ResizeBegin
 AntiFlicker = True
 Me.MaximizeBox = True
 End Sub

 '调整完毕时关闭抗闪烁
 Private Sub Form2_ResizeEnd(sender As Object,e As System.EventArgs) Handles Me.ResizeEnd
 AntiFlicker = False
 Me.MaximizeBox = True
 End Sub

(编辑:李大同)

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

    推荐文章
      热点阅读