SWT中使用Swing
2018-02-25 15:32
621 查看
在SWT出现之前,已经有众多的Swing程序和控件被开发出来,为了充分利用这些现有的资源,SWT需要提供一种在SWT中使用Swing控件的途径。
Swing是通过在AWT的Canvas控件上绘图以显示各种控件的,而AWT的控件与SWT的原理相似,都是直接对应到操作系统的控件资源,因此只要使用SWT模拟出AWT的Canvas,Swing的控件就可以在上面运行。为此,SWT提供了一个org.eclipse.swt.awt.SWT_AWT类,该类通常被叫做SWT_AWT桥。
在SWT_AWT中,提供了一个方法用于从SWT中的Composite容器得到一个AWT的Frame容器new_Frame(Composite composite)。我们既然得到了一个AWT Frame,就可以向这个Frame中添加一个Swing的容器Panel。下面我们来看一个示例:
转载自http://blog.csdn.net/jianggujin/article/details/51436070
Swing是通过在AWT的Canvas控件上绘图以显示各种控件的,而AWT的控件与SWT的原理相似,都是直接对应到操作系统的控件资源,因此只要使用SWT模拟出AWT的Canvas,Swing的控件就可以在上面运行。为此,SWT提供了一个org.eclipse.swt.awt.SWT_AWT类,该类通常被叫做SWT_AWT桥。
在SWT_AWT中,提供了一个方法用于从SWT中的Composite容器得到一个AWT的Frame容器new_Frame(Composite composite)。我们既然得到了一个AWT Frame,就可以向这个Frame中添加一个Swing的容器Panel。下面我们来看一个示例:
package swt; import java.awt.Frame; import javax.swing.JButton; import javax.swing.JPanel; import org.eclipse.swt.SWT; import org.eclipse.swt.awt.SWT_AWT; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; import org.junit.Test; public class SwingTest { @Test public void test() { Display display = Display.getDefault(); Shell shell = new Shell(display); shell.setBounds(100, 100, 200, 100); shell.open(); Composite composite = new Composite(shell, SWT.EMBEDDED); composite.setBounds(0, 0, 200, 100); Frame frame = SWT_AWT.new_Frame(composite); JPanel panel = new JPanel(); panel.add(new JButton("I'm a swing button")); frame.add(panel); while (!shell.isDisposed()) { if (!display.readAndDispatch()) { display.sleep(); } } display.dispose(); } }运行效果如图所示:
转载自http://blog.csdn.net/jianggujin/article/details/51436070
相关文章推荐
- java在线聊天项目 使用SWT快速制作登录窗口,可视化窗口Design 更换窗口默认皮肤(切换Swing自带的几种皮肤如矩形带圆角)
- SWT中使用Swing
- 【JAVA/swing】eclipse的jigloo插件可视化开发java swing/SWT.安装及使用演示。
- 在Swing和Swt中使用JavaFX
- eclipse的jigloo插件可视化开发java swing/SWT.安装及使用演示。
- 在Swing和Swt中使用JavaFX
- 在Swing和Swt中使用JavaFX
- JApplet与swing的使用和JApplet的安全特点
- SWT、Swing 或 AWT 比较与适用范围
- Java Swing Ribbon(Flamingo)的使用04:按钮模式更改
- Swing组件的使用---文本框(JTextField)与文本区(JTextArea)
- Swing之JList的使用
- Swing和SWT取舍之我见
- JAVA Swing GUI设计 WindowBuilder Pro Container使用大全7——JDesktopPane使用
- Swing图片ImageIcon对象到SWT图片Image对象的转换
- swing基本组件使用1.0.1(JScrollPane,JSplitPane,JTabbedPane)
- Java Swing中添加图标、对话框、分割线、信息提示、面板的使用
- Java工程中使用Mybatis (工程结合Mybatis,数据结合Swing使用))
- swing组件JTabel和JTree使用总结
- SWT,Swing,AWT及最小公分母问题(LCD)