IBM实验室对SWT, Swing 和 AWT 的特征比较

2008-02-23 09:19:41来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

Table 1. SWT vs. AWT and Swing Feature comparison
Function/Role/ASPect AWT Swing SWT (style) Display static text Label JLabel Label, CLabel Display multi-line static text Multiple Labels Multiple JLabels or JLabel with HTML content Multiple Labels or Label with newlines Display multi-line formatted static text Multiple Labels with different fonts JLabel with HTML content Multiple Labels with different fonts Single-line text entry TextField JTextField Text(SWT.SINGLE) Multi-line text entry TextArea JTextArea Text(SWT.MULTI) Display an image N/A JLabel Label Display text and image N/A JLabel CLabel ToolTip pop-up help N/A setToolTip on component, subclass JToolTip setToolTip on control Styled text entry N/A JEditorPane StyledText Select from list of items List JList List Simple push button with text Button JButton Button(SWT.PUSH) Simple push button with text and/or image N/A JButton Button(SWT.PUSH) Drawing area; possibly for custom controls Canvas JPanel Canvas On/off check box CheckBox JCheckBox Button(SWT.CHECK) Radio selection CheckBoxGroup ButtonGroup and menus Group and Menu Select from a drop-down list Choice JComboBox Combo, CCombo Enter text or select from a drop-down list N/A JComboBox Combo, CCombo Scrollable area ScrollPane JScrollPane Create Scrollable subclass Top level Windows Dialog, Frame, Window JDialog, JFrame, JWindow Shell with different styles Generic window Window JWindow Shell Frame window Frame JFrame Shell(SWT.SHELL_TRIM) Dialog window Dialog JDialog Shell(SWT.DIALOG_TRIM) Menu Menu JMenu Menu MenuItem MenuItem JMenuItem MenuItem Menu shortcuts Generic keystrokes same as AWT host dependent mnemonics and accelerators Pop-up menu PopupMenu JPopupMenu Menu(SWT.POPUP) Menu bars MenuBar JMenuBar Menu(SWT.BAR) Display an insertion caret N/A Caret Caret Web browser N/A JTextPane (HTML 3.2) Browser (via embedded browser) Embed control in web page Applet JApplet Host control (ex. OLE) Generic container of other controls Panel JPanel Composite Generic container of other controls with a border Panel (if drawn manually) JPanel with a Border Composite(SWT.BORDER) Generic container of other controls with a border and title N/A JPanel with a TitledBorder Group Radio button (one of set on) Checkbox JRadioButton Button(SWT.RADIO) Control extent of radio buttons CheckboxGroup RadioButtonGroup Group Arrow buttons N/A JButton with image Button(SWT.ARROW) Supports int'l text orientations via ComponentOrientation same as AWT Many components support styles for this Focus Traversal Policy and Manager objects same as AWT Next on control Custom dialogs Dialog subclass JDialog subclass Dialog subclass Access to system events EventQueue services same as AWT Display services (less robust than AWT) System access dialogs FileDialog JColorChooser, JFileChooser ColorDialog, DirectoryDialog, FileDialog, FontDialog, PrintDialog Display simple message dialog N/A (must subclass Dialog) JOptionPane static methods MessageBox with numerous styles Display simple prompting dialog N/A (must subclass Dialog) JOptionPane static methods N/A (classes exist in JFace to do this) Layout managers BorderLayout, CardLayout, FlowLayout, GridLayout, GridBagLayout AWT plus BoxLayout, CenterLayout, SpringLayout FillLayout, FormLayout, GridLayout, RowLayout, StackLayout Basic drawing control Canvas JPanel Canvas Basic drawing Graphics and Graphics2D objects - Basic shapes and text, arbitrary Shapes and Strokes, Bezier, fills, etc. same as AWT GC object - Basic shapes and text Drawing transforms Affine, composites same as AWT N/A Off screen drawing BufferedImage, drawImage same as AWT Image, drawImage Double buffering Manual Automatic or manual Manual unless provided by host control Printing PrintJob and PrintGraphics same as AWT draw to Printer device Custom colors Color same as AWT Color Custom fonts Font, FontMetrics same as AWT Font Cursors selection Cursor same as AWT Cursor Image features load from file, create dynamically, extensive edits same as AWT load from file, create dynamically, basic edits Input automation Robot same as AWT N/A Display a tool bar N/A JToolBar ToolBar, CoolBar Display a progress bar N/A JProgressBar ProgressBar Divide space between areas N/A JSPlitPane Sash or SashForm Display tabbed areas N/A JTabbedPane TabFolder, CTabFolder Display tabular info N/A JTable Table Format table columns N/A TableColumn TableColumn Display hierarchical info N/A JTree Tree Select from range of values N/A JSlider Slider Select from discrete range of values N/A JSpinner Scale Access to the base display Toolkit, GraphicsConfiguration, GraphicsDevice same as AWT Display Add items to the system tray N/A N/A Tray

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:八卦Sourceforge后台的空间规则

下一篇:和JSF一起使用JSTL和其它的JSP定制标记