草庐IT

java - 如何覆盖 Java SWT FileDialog 类的打开按钮

我希望在按下按钮时弹出文件选择对话框。为此,我使用org.eclipse.swt.widgets.FileDialog类并打开对话框。默认情况下有两个按钮“打开”(我们在选择文件后按下的按钮)和“取消”按钮。我希望按钮上的名称从“打开”更改为“导入”。是否可以覆盖FileDialog上的这个按钮? 最佳答案 SWT使用操作系统资源。您看到的文件对话框是用于打开文件的典型操作系统对话框。如果不实现自己的对话框,则无法更改按钮的文本。Open的唯一替代方法是使用样式位Save:SWT.SAVE代替SWT.OPEN

java - 使用 HTML 开发桌面应用程序 View ,作为 Web 应用程序

我习惯用Java(Struts、Spring、JSP...)开发Web应用程序。但是现在我想开发一个桌面版。我从不喜欢用Java(AWT、Swing、SWT)设计窗口:丑陋的界面需要做太多工作。所以我认为如果可以利用我的网络应用程序技能可能是个好主意。一种选择是修改SWT浏览器并调用Java函数而不是HTTP请求。一个很好的附加组件是使用JSP。最后,我认为可能有一些框架或工具可以做到这一点。你觉得我的建议好吗?有可用的框架吗?我需要这个用于轻型应用。所以我认为嵌入Tomcat服务器并将其用于HTTP请求并不是一个好主意。编辑:一个示例应用程序可以是文件夹比较器:您指定两个文件夹,该应

java - Spring 和 SWT 可以一起用于 Java 桌面应用程序吗?

我要设计Java桌面应用程序。在设计Web应用程序时,我有很多选择,例如Spring、Strut等。但是,对于JavaDesktop(这对我来说是新手),我没有找到。EclipseRCP是一个Java桌面框架,它在Web应用程序中的工作方式类似于Springmvc吗?我在想,我可以用Spring享受IOC的好处,和EclipseRCP一起享受两全其美的好处吗?请指教。谢谢。 最佳答案 在java桌面领域,您有2个主要选择:Swing或SWT。我在这个上忽略了AWT。QTJambi不是在Java中使用的。大多数Java桌面应用程序都使

java - 如何在 SWT 中绘制 Composite 的子元素?

我知道要在Composite上绘图,您可以添加一个绘图监听器,但这会导致在子项下绘图。如果我想在children的上方画画怎么办?下面画了一条线,但是subc画在了它上面。Compositec=newComposite(shell,0);c.setBackground(shell.getDisplay().getSystemColor(SWT.COLOR_BLUE));c.setBounds(100,100,800,600);c.addPaintListener(newPaintListener(){publicvoidpaintControl(PaintEvente){e.gc.dr

java - eclipse插件如何通过代码在IDE中打开文件

我正在开发eclipse插件,我必须在其中从项目资源管理器打开一个文件。假设我在项目资源管理器中有一个项目ABC。右键单击项目后,我可以选择运行我的插件工具。处理后我得到了一些结果,比如Checkfilexyz.java。现在我想通过代码在IDE中打开这个文件我正在用这个Fileabsolute=newFile("/Decider.java");Filefile=newFile("/Decider.java");IFileStorefileOnLocalDisk=EFS.getLocalFileSystem().getStore(absolute.toURI());FileStoreE

java - 如何让 Label 在 SWT 中继承 Composite GC

我正在编写一个应用程序,我们的设计师想要对我们的一些合成Material的某些背景使用渐变。我写了下面的代码:composite.addListener(SWT.Paint,newListener(){publicvoidhandleEvent(Evente){GCgc=e.gc;Rectanglerect=composite.getClientArea();Colorcolor1=newColor(display,0,0,0);Colorcolor2=newColor(display,255,255,255);gc.setForeground(color1);gc.setBackgr

java - 如何从 SWT 与 Javascript 函数对话

我的HTML文件有一个javascript函数xxx_return(),它将返回一个字符串值。有什么办法可以从Java层获取这个值吗?我正在使用SWTshell来显示此html。SWT是否具有获取脚本函数返回值的功能?编辑:我的代码如下:包测试.html.simulation;importorg.eclipse.swt.SWT;importorg.eclipse.swt.SWTException;importorg.eclipse.swt.browser.Browser;importorg.eclipse.swt.widgets.Display;importorg.eclipse.sw

java - 组织.eclipse.swt.SWTException : "Widget is disposed" from table refresh

该应用程序是一个基于Eclipse3.6的RCP(因此jface版本3.5.2)在Windows7上运行。我有一个包含TableViewer并对其调用refresh()的自定义View类。有时,但不是经常,它会导致下面的堆栈跟踪。它是从UI线程中调用的。我怀疑问题出在将支持列表更改为表的其他代码,但执行此操作的任何代码也在syncExec或asyncExec方法中运行,所以我不明白它如何成为更改之间的同步问题表格项目和查看器的刷新。有什么想法可以防止这种情况发生吗?!ENTRYorg.eclipse.jface422010-10-2009:22:06.140!MESSAGEProble

java - SWT 事件传播

我正在尝试检测包含许多其他复合Material的复合控件上的点击事件。我试过:topComposite.addMouseListener(newMouseListener(){...@OverridepublicvoidmouseUp(MouseEventarg0){logger.info("HERE");});});但是事件永远不会触发。我假设当一个鼠标事件发生在一个child身上时,它会向上传播链,但那并没有发生。我该怎么做? 最佳答案 在SWT中,一般规则是事件不传播。主要的异常(exception)是遍历事件的传播——这描述

java - 在 Java 方法中使用标志的最佳实践

在Java方法中指定标志的最佳实践是什么?我见过SWT使用int作为位域,例如:(示例部分来自“EffectiveJava,第2版”,第159页):publicclassText{publicstaticfinalintSTYLE_BOLD=1您的客户电话看起来像:printText("hello",Text.STYLE_BOLD|Text.STYLE_ITALIC);..但不鼓励这样做,因为您可以将来自不同类的标志(int值)混合在一起而无需任何编译器检查。在同一本书(“EffectiveJava”)中,我看到了EnumSet的使用,但随后您的用户调用变为:printText("he