在SWT中,怎样设置progressbar
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在SWT中,怎样设置progressbar相关的知识,希望对你有一定的参考价值。
ProgressBar bar = new ProgressBar(table, SWT.HORIZONTAL
| SWT.SMOOTH);
bar.setSelection(0);
TableEditor editor = new TableEditor(table);
editor.grabHorizontal = editor.grabVertical = true;
editor.setEditor(bar, tableitem, PROGRESS_COL);
我通过以上代码将progressbar加入到了一个tableitem的PROGRESS_COL列,现在我有一个tableitem项,需要修改PROGRESS_COL列,怎么修改...
然后导出的jar包就可以用来import了~
希望对你有帮助。
补充:
1.import的路径名要全阿。
2.没有在任何包下面的包不能被import。(也就是说一定要在java文件开头声明package xxx;之类的)
3.你要直接import的话不用打成jar包啊,用全部路径就可以import了,当然和第二点一样,一定要有包名。
数据导入CoreData期间如何显示progressBar?
【中文标题】数据导入CoreData期间如何显示progressBar?【英文标题】:How to show progressBar during data import into CoreData? 【发布时间】:2010-11-20 20:59:48 【问题描述】:我正在将大量数据导入 CoreData。我想显示导入进度的进度条。
首先我要显示进度条。 然后我在数我要导入的数据。 然后我设置了一个 for 循环:
在这个 for 循环中,我首先设置了 coreData 对象。 然后我正在增加进度视图。在这个循环之后,我保存了 coreData 对象并隐藏了 progressBar。
[self.progressView show];
int allFiles = [file count];
int currentFile = 1;
for(NSString *trackid in file)
[entidyDesc setName:[track objectForKey:@"theKey"]];
float progress = [self convertAmountForProgressBar:currentFile maxNum:allFiles];
self.progressView.progressBar.progress = progress;
[self.progressView hide];
[self.managedObjectContext save:nil];
(简体)
问题是,progressBar 没有更新。它显示,但在 for 循环完成后首先更新,而不是隐藏。因此,进度条仅在 for 循环之后显示。
任何想法如何解决这个问题?
【问题讨论】:
【参考方案1】:在另一个线程中进行导入,并使用-[NSObject performSelectorOnMainThread:withObject:waitUntilDone:]
将进度信息发送到主线程。
享受调试并发问题的乐趣。
你也可以用 CATransactions 做一些可怕的事情,但我的印象是 UIKit 应该为你处理所有这些。
【讨论】:
+1 UI 在前端线程。前端线程上的任何长进程,比如一个大循环,都会冻结 UI,直到它完成。【参考方案2】:您是否尝试过启用线程动画:
- (void)setUsesThreadedAnimation:(BOOL)flag
Apple 的documentation 中的更多信息。
【讨论】:
哦对不起,我不得不说我在 ios 上开发。 ios上有没有类似的东西?以上是关于在SWT中,怎样设置progressbar的主要内容,如果未能解决你的问题,请参考以下文章