图标选择 : 按钮 « SWT-JFace-Eclipse « Java

En
Java
1. 图形用户界面
2. 三维图形动画
3. 高级图形
4. 蚂蚁编译
5. Apache类库
6. 统计图
7. 
8. 集合数据结构
9. 数据类型
10. 数据库JDBC
11. 设计模式
12. 开发相关类
13. EJB3
14. 电子邮件
15. 事件
16. 文件输入输出
17. 游戏
18. 泛型
19. GWT
20. Hibernate
21. 本地化
22. J2EE平台
23. 基于J2ME
24. JDK-6
25. JNDI的LDAP
26. JPA
27. JSP技术
28. JSTL
29. 语言基础知识
30. 网络协议
31. PDF格式RTF格式
32. 映射
33. 常规表达式
34. 脚本
35. 安全
36. Servlets
37. Spring
38. Swing组件
39. 图形用户界面
40. SWT-JFace-Eclipse
41. 线程
42. 应用程序
43. Velocity
44. Web服务SOA
45. 可扩展标记语言
Java 教程
Java » SWT-JFace-Eclipse » 按钮屏幕截图 
图标选择
图标选择

/******************************************************************************
 * Copyright (c) 1998, 2004 Jackwind Li Guojie
 * All right reserved. 
 
 * Created on Jan 5, 2004 2:15:34 PM by JACK
 * $Id$
 
 * visit: http://www.asprise.com/swt
 *****************************************************************************/
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;

public class IconSelector {

  Display display = new Display();
  Shell shell = new Shell(display);

  Label labelIconFile;

  Text textIconFile;
  
  Button buttonIconBrowse;
  Button buttonSetIcon;
  
  Image shellIcon;
  
  Image buttonIcon;
  
  public IconSelector() {
    initializeUI();
    
    shell.pack();
    shell.open();
    //textUser.forceFocus();
    
    // Set up the event loop.
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        // If no more entries in event queue
        display.sleep();
      }
    }

    display.dispose();
  }
  
  private void initializeUI() {
    GridLayout gridLayout = new GridLayout(3false);
    shell.setLayout(gridLayout);

    // Adds components to the first row.
    labelIconFile = new Label(shell, SWT.NULL);
    
    textIconFile = new Text(shell, SWT.SINGLE | SWT.BORDER);
    
    GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    textIconFile.setLayoutData(gridData);

    
    buttonIconBrowse = new Button(shell, SWT.PUSH);

    // last row.
    gridData = new GridData();
    gridData.horizontalSpan = 3;
    gridData.horizontalAlignment = GridData.CENTER;
    buttonSetIcon = new Button(shell, SWT.PUSH);
    buttonSetIcon.setLayoutData(gridData);

    shell.setText("Icon Selector");

    labelIconFile.setText("Select an icon:");

    buttonIconBrowse.setText("Browse");
    buttonSetIcon.setText("Set Icon");

    // Register listeners.
    buttonIconBrowse.addSelectionListener(new SelectionAdapter() {
      public void widgetSelected(SelectionEvent e) {
        FileDialog dialog = new FileDialog(shell, SWT.OPEN);
        String file = dialog.open();
        if (file != null) {
          textIconFile.setText(file);
        }
      }
    });

    buttonSetIcon.addSelectionListener(new SelectionAdapter() {
      public void widgetSelected(SelectionEvent e) {
        if(shellIcon != null
          shellIcon.dispose();
        
        try {
          shellIcon = new Image(display, textIconFile.getText());
          shell.setImage(shellIcon);
        }catch(Exception ex) {
          ex.printStackTrace();
        }
      }
    });  
  
  }
  
  public static void main(String[] args) {
    IconSelector iconSelector = new IconSelector();
  }
}
           
       
Related examples in the same category
1. SWT按钮SWT按钮
2. SWT按钮实例演示SWT按钮实例演示
3. SWT按钮行动SWT按钮行动
4. 默认按钮默认按钮
5. 按钮风格按钮风格
6. 图像按钮
7. 窗口小部件样式窗口小部件样式
8. 显示按钮显示按钮
9. 按钮为例按钮为例
10. 箭头按钮箭头按钮
11. 按钮选择事件
12. Make a toggle button have radio behaviorMake a toggle button have radio behavior
13. 设置默认按钮设置默认按钮
www.java2java.com | Contact Us
Copyright 2010 - 2030 Java Source and Support. All rights reserved.
All other trademarks are property of their respective owners.