您的位置:首页 > 财经 > 产业 > 网站建立的步骤是( )。_宁波seo服务快速推广_北京seo助理_三一crm手机客户端下载

网站建立的步骤是( )。_宁波seo服务快速推广_北京seo助理_三一crm手机客户端下载

2024/12/23 15:36:12 来源:https://blog.csdn.net/qq_36324341/article/details/144467011  浏览:    关键词:网站建立的步骤是( )。_宁波seo服务快速推广_北京seo助理_三一crm手机客户端下载
网站建立的步骤是( )。_宁波seo服务快速推广_北京seo助理_三一crm手机客户端下载

Swing和模型-视图-控制器设计模式

用户界面组件各个组成部分,如按钮,复选框,文本框或复杂的树控件,每个组件都有三个特征:
  • 内容,如按钮的状态,文本域中的文本。
  • 外观,颜色,大小等。
  • 行为,对事件的反映。
Swing设计者采用了一种很有名的设计模式:MVC
  • 模型(model):存储内容。
  • 视图(view):显示内容。
ButtonModel接口属性
  • actionCommand,与按钮关联的动作命令字符串
  • mnemonic,按钮的助记快捷键
  • armed,按钮按下且鼠标仍在按钮上则为true
  • enabled,按下按钮钮时可选择的则为true
  • pressed,按钮按下且鼠标按键没释放则为true
  • rollover,鼠标在按钮上则为true
  • selected,按钮已经被选择(复选框和单选按钮),则为true。
每个JButton对象都存储着一个按钮对象:
var button = new JButton("Blue");
ButtonModel model = button.getModel();
JButton继承自JComponent,包含DefaultButtonModel对象,BasicButtonUI对象。
package swing;import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;import javax.swing.ButtonModel;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;public class ButtonModelTest {public static void main(String[] args) {JFrame frame = new JFrame("ButtonModel");JPanel buttonPanel = new JPanel();JLabel jLabel = new JLabel("ButtonModel",JLabel.CENTER);JButton jButton = new JButton("操作按钮");frame.add(jLabel,BorderLayout.CENTER);buttonPanel.add(jButton);frame.add(buttonPanel,BorderLayout.SOUTH);ButtonModel bm =  jButton.getModel();jButton.addMouseListener(new MouseListener() {@Overridepublic void mouseReleased(MouseEvent e) {System.out.println("松开鼠标!");}@Overridepublic void mousePressed(MouseEvent e) {
//                System.out.println("按下鼠标!");if(bm.isArmed()) {System.out.println("按钮按下且鼠标仍在按钮上!");}if(bm.isPressed()) {System.out.println("按钮按下且鼠标按键没释放!");}}@Overridepublic void mouseExited(MouseEvent e) {}@Overridepublic void mouseEntered(MouseEvent e) {
//                System.out.println("鼠标进入按钮区域!");if(bm.isRollover()) {System.out.println("鼠标在按钮上!");}}@Overridepublic void mouseClicked(MouseEvent e) {System.out.println("单击鼠标!");}});frame.setSize(600, 400);//初始打开为屏幕中央Toolkit toolkit = Toolkit.getDefaultToolkit();Dimension screenSize = toolkit.getScreenSize();int screenWidth = (int) screenSize.getWidth();int screenHeight = (int) screenSize.getHeight();//计算窗口位置int x = (screenWidth - frame.getWidth())/2;int y = (screenHeight - frame.getHeight())/2;frame.setLocation(x, y);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com