zoukankan      html  css  js  c++  java
  • 一道关于简单界面设计的练习题

      也是我妹问我的,她们要求直接用代码写,估计若是我长时间不看也写不出来,哈哈,幸好咱有界面设计器(WB)……

    我加了个要求,若是原来有文本就清空,刚开始想判断鼠标单击的次数,奇数就显示,偶数就清空,也可以的,只不过或许不保险,反应不过来咋办,哈哈。

    //鼠标事件内容是我写的,其它WB搞定
    import java.awt.BorderLayout;
    import java.awt.EventQueue;
    
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.border.EmptyBorder;
    import javax.swing.JTextField;
    import javax.swing.JButton;
    import java.awt.event.MouseAdapter;
    import java.awt.event.MouseEvent;
    
    public class MyJFrame extends JFrame {
    
    	private JPanel contentPane;
    	private JTextField textField;
    
    	/**
    	 * Launch the application.
    	 */
    	public static void main(String[] args) {
    		EventQueue.invokeLater(new Runnable() {
    			public void run() {
    				try {
    					MyJFrame frame = new MyJFrame();
    					frame.setVisible(true);
    				} catch (Exception e) {
    					e.printStackTrace();
    				}
    			}
    		});
    	}
    
    	/**
    	 * Create the frame.
    	 */
    	public MyJFrame() {
    		setTitle("u6D4Bu8BD5u7A97u53E3");
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setBounds(100, 100, 450, 300);
    		contentPane = new JPanel();
    		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    		contentPane.setLayout(new BorderLayout(0, 0));
    		setContentPane(contentPane);
    		
    		JPanel panel = new JPanel();
    		contentPane.add(panel, BorderLayout.NORTH);
    		
    		textField = new JTextField();
    		panel.add(textField);
    		textField.setColumns(10);
    		
    		JButton btnNewButton = new JButton("u5355u51FBu6211");
    		btnNewButton.addMouseListener(new MouseAdapter() {
    			@Override
    			public void mouseClicked(MouseEvent arg0) {
    				String s = textField.getText();
    				if(0==s.length()) {//判断文本域为空,方法都忘记了
    					textField.setText("用户单击了我");//直接这样就显示了
    				}else
    				{
    					textField.setText("");//清空只能这样,没有方法
    				}
    			}
    		});
    		panel.add(btnNewButton);
    	}
    
    }
    

     

    引出下面一个小问题JFrame和JPanel的区别?

      JFrame是最底层,JPanel是置于其面上,同一个界面只有一个JFrame,一个JFrame可以放多个JPanel。JFrame是窗口,JPanel是面板,窗口可以有最大最小化,标题栏图标,面板没有。JFrame是界面组件的容器,JPanel也是容器,但是任何组件包括Panel的显示都依赖于frame..

  • 相关阅读:
    0MQ手册(给力!)
    Beansdb动态关注
    要成功?每天记得这几点(成功手抄本)
    使用Entity Framework和WCF Ria Services开发SilverLight之7:多个Domain Service间共享Poco实体
    使用Entity Framework和WCF Ria Services开发SilverLight之4:Map之主外键映射
    SilverLight Tip 1 : Validation
    使用Entity Framework和WCF Ria Services开发SilverLight之6:查找指定字段
    SilverLight单元测试1:框架
    MVVM模式之:ViewModel Factory与注入
    MVC TIP5:JQuery AJAX错误捕获
  • 原文地址:https://www.cnblogs.com/hxsyl/p/3164527.html
Copyright © 2011-2022 走看看