首页 > 解决方案 > 我使用画布创建了一个绘图实用程序。有什么方法我也可以合并 JButtons、JTextFields 等

问题描述

我使用画布创建了一个绘图实用程序。目前,信息是通过控制台输入的。但是,我想通过 JTextField 和 JButtons 添加输入来使程序更美观。有什么办法可以做到吗?

标签: javaswinggraphics

解决方案


像这样的东西:

import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class JFrameWithCanvas extends JFrame {

    private Canvas canvas = new Canvas();

    public JFrameWithCanvas() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        JPanel pnlToolbar = new JPanel();
        pnlToolbar.add(new JTextField(10));
        pnlToolbar.add(new JButton("foo"));
        getContentPane().add(pnlToolbar, BorderLayout.PAGE_START);
        canvas.setBackground(Color.MAGENTA);
        getContentPane().add(canvas, BorderLayout.CENTER);
        canvas.setPreferredSize(new Dimension(300, 300));
        pack();
        setLocationRelativeTo(null); // center it on the screen
    }

    public static void main(String[] args) {
        new JFrameWithCanvas().setVisible(true);
    }   
}

推荐阅读