色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java用菜單和按鈕來控制繪圖

Java是一門跨平臺(tái)的編程語言,并且在圖形用戶界面設(shè)計(jì)方面有著不錯(cuò)的表現(xiàn)。本文將介紹如何使用菜單和按鈕來控制繪圖。

首先,我們需要一個(gè)繪圖區(qū)域??梢允褂肑Panel進(jìn)行繪制,代碼如下:

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JPanel;
public class DrawingPanel extends JPanel {
private int x1, y1, x2, y2;
public DrawingPanel() {
setBackground(Color.WHITE);
setPreferredSize(new Dimension(400, 300));
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawLine(x1, y1, x2, y2);
}
public void drawLine(int x1, int y1, int x2, int y2) {
this.x1 = x1; this.y1 = y1;
this.x2 = x2; this.y2 = y2;
repaint();
}
}

以上代碼定義了一個(gè)繼承自JPanel的DrawingPanel類,其中使用了paintComponent()方法進(jìn)行繪制。drawLine()方法用于外部控制繪制直線。

然后,我們需要?jiǎng)?chuàng)建菜單和按鈕??梢允褂肑MenuBar、JMenu、JMenuItem、JToolBar和JButton等組件,代碼如下:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JToolBar;
import javax.swing.SwingUtilities;
public class MainFrame extends JFrame {
private DrawingPanel drawingPanel;
public MainFrame() {
super("Java繪圖");
drawingPanel = new DrawingPanel();
add(drawingPanel);
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JMenu fileMenu = new JMenu("文件");
menuBar.add(fileMenu);
JMenuItem exitMenuItem = new JMenuItem("退出");
exitMenuItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
System.exit(0);
}
});
fileMenu.add(exitMenuItem);
JToolBar toolBar = new JToolBar();
add(toolBar, "North");
JButton lineButton = new JButton("直線");
lineButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
drawingPanel.drawLine(50, 50, 300, 200);
}
});
toolBar.add(lineButton);
pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new MainFrame();
}
});
}
}

以上代碼定義了一個(gè)繼承自JFrame的MainFrame類,其中使用了JMenuBar、JMenu、JMenuItem、JToolBar和JButton等組件。使用JMenuBar和JMenu創(chuàng)建文件菜單并添加退出菜單項(xiàng),使用JToolBar和JButton創(chuàng)建直線按鈕并添加到工具欄。

最后,我們可以運(yùn)行程序并點(diǎn)擊菜單項(xiàng)或者按鈕來控制繪圖。