Themes 具有许多小部件的编辑器具有糟糕的性能
我们切换到e4目标平台。一个编辑器的渲染速度非常慢(距离布局大约20秒)。当从编辑器菜单打开模式对话框时,应用程序会像癫痫发作一样闪烁 当我们关闭css时,通过Themes 具有许多小部件的编辑器具有糟糕的性能,themes,e4,Themes,E4,我们切换到e4目标平台。一个编辑器的渲染速度非常慢(距离布局大约20秒)。当从编辑器菜单打开模式对话框时,应用程序会像癫痫发作一样闪烁 当我们关闭css时,通过 DefaultScope.INSTANCE.getNode(“org.eclipse.e4.ui.workbench.renderers.swt”) .put(“themeEnabled”、“false”); 在插件中,渲染速度非常快(…为了清楚起见,我使用eclipse向导创建了一个全新的应用程序(…具有视图) 我用该代码替换了示例
DefaultScope.INSTANCE.getNode(“org.eclipse.e4.ui.workbench.renderers.swt”)
.put(“themeEnabled”、“false”);
在插件中,渲染速度非常快(…为了清楚起见,我使用eclipse向导创建了一个全新的应用程序(…具有视图) 我用该代码替换了示例视图代码-正如我所提到的,当我们关闭css/主题时(参见上面的代码),一切都很好-否则它不会停止抖动,甚至很难让鼠标指针回到eclipse来停止应用程序:
package xyz;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.part.ViewPart;
public class View extends ViewPart {
public static final String ID = "xyz.view";
public class BigControl extends Composite {
public BigControl(Composite parent, int style) {
super(parent, style);
setLayout(new GridLayout(23, false));
for (int i=0; i<100; i++) {
for (int j=0; j<23; j++) {
new Label(this, SWT.NONE).setText("|" + Integer.toString(i) + " " + Integer.toString(j) + "|");;
}
}
}
}
@Override
public void createPartControl(Composite parent) {
new BigControl(parent, SWT.NONE);
}
@Override
public void setFocus() {
}
}
xyz包;
导入org.eclipse.swt.swt;
导入org.eclipse.swt.layout.GridLayout;
导入org.eclipse.swt.widgets.Composite;
导入org.eclipse.swt.widgets.Label;
导入org.eclipse.ui.part.ViewPart;
公共类视图扩展了ViewPart{
公共静态最终字符串ID=“xyz.view”;
公共类BigControl扩展了复合{
公共BigControl(复合父级,int样式){
超级(父母,风格);
setLayout(新的GridLayout(23,false));
对于(int i=0;iOK),我们用新的平台(2019-3)替换了目标平台。我不知道使用旧的平台
闪烁停止,但仍然不快(调整窗口大小大约需要2秒),但目前可以接受
谢谢你的帮助
最棒的是,Martin在macOS上似乎工作得很快,但这么多的控件是个坏主意。在某些平台上,您将接近极限。谢谢您,正如我所说的,我们没有时间用nattable(比方说)替换它。控件非常复杂,所以我们现在可以忘记它了。