Java SWT中Shell怎样刷新?

我动态生成了一个Shell窗体,可以根据变量的数值生成对应的tabItem.现在做了一个按钮,按钮事件中重新给变量赋了值,目的是当我按下这个按钮时改变窗体中tabItem... 我动态生成了一个Shell窗体,可以根据变量的数值生成对应的tabItem.
现在做了一个按钮,按钮事件中重新给变量赋了值,目的是当我按下这个按钮时改变窗体中tabItem的个数,请问应该用什么命令可以让shell窗体刷新一下?也就是重新生成这个窗体。
如果说shell刷新不行的话,其中的composite组件能不能刷新?
展开
 我来答
百度网友3b46a7f
推荐于2018-04-05 · TA获得超过2520个赞
知道小有建树答主
回答量:735
采纳率:0%
帮助的人:0
展开全部
以前我做过一个Table,内容是动态且是pack()显示的,刚开始内容改变后好像用的是Table.redraw(); 虽然也能实现功能,但是因为tableitem显示的内容有长有短,pack以后表变动特大,而且redraw的时候能看到item内容变化的过程,很突兀且效率较低,影响用户体验。
后来一个很好的解决方法是:
要改动内容前设置 Table.setVisible(false);
然后改变tableitem
改变以后Table.setVisible(true); 这样就可以了

附:清空表内容的方法是Table.clearAll()
ms16211803
2010-02-03 · TA获得超过166个赞
知道小有建树答主
回答量:276
采纳率:0%
帮助的人:139万
展开全部
用redraw或者refresh. layout也可以达到刷新的目的并且要重新计算布局。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
oyquanmin
2010-01-31
知道答主
回答量:84
采纳率:0%
帮助的人:31.6万
展开全部
可以用调用shell.layout()方法。这个方法不会改变容器的布局。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
通顺又顽强丶松柏i
2010-01-28 · 超过10用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:0
展开全部
invalidate(); 这个方法是刷新控件
你可以点按钮的时候,重新调用下tabItem啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式