当前位置:  开发笔记 > 后端 > 正文

VB6 ssTab奇怪

如何解决《VB6ssTab奇怪》经验,为你挑选了1个好方法。

我在VB6程序中使用ssTab控件(这可能是我的整个问题),我正在将数据绘制到位于选项卡0上的Picturebox中.当我重绘图形时(例如,在窗口调整大小之后),第一个我做的是清除方框:

Picture2.Line (0, 0)-(Picture2.Width, Picture2.Height), RGB(255, 255, 255), BF

当Tab 0可见时,该工作正常,但如果在显示不同的选项卡时调用此代码,则整个可见选项卡(以及选项卡0)的背景将变为白色.不仅仅是Picture2的区域,而是两个标签的整个可见区域.除0以外的选项卡和当前选定的选项卡不受影响.

我第一次粗略地解决这个问题的方法是在上面的Line命令之前将标签更改回标签0:

SSTab1.Tab = 0 ' Select tab containing PictureBox2
DoEvents

但是得到了相同的结果 - 原始标签和0标签现在都是白色的(尽管它确实将可见标签更改回标签0).

我注意到,当发生wallpainting时,Picture2.Width的值比它应该的大.如果Tab 0可见,当我调整窗口大小时,Picture2.Width在7180和21225 Twips之间变化.当我选择Tab 1并调整大小时,Picture2.Width大约为82180(高度保持在应有的位置).

我知道SStab有点儿马车,但有没有人知道任何工作方式?我可以将修复(在重绘后重新绘制两个选项卡上的灰色背景)整合在一起,但我想了解为什么Picture2.Width失去理智......



1> DJ...:

SStab使一个选项卡上的控件可见而隐藏其他控件的方式是使Left属性为负(基本上是"屏幕外")

这不应该影响width属性 - 你有自定义重新大小代码?

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有