java - 我使用画布创建了一个绘图实用程序。有什么方法我也可以合并 JButtons、JTextFields 等
问题描述
我使用画布创建了一个绘图实用程序。目前,信息是通过控制台输入的。但是,我想通过 JTextField 和 JButtons 添加输入来使程序更美观。有什么办法可以做到吗?
解决方案
像这样的东西:
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);
}
}
推荐阅读
- python-2.7 - 错误:__init__() 有一个意外的关键字参数“n_splits”
- symfony4 - Symfony 4 的 laupiFrpar/LopiPusherBundle 配置
- c# - Discord.Net bot 在服务器上托管时出现奇怪的延迟
- amazon-web-services - AWS:向 RDS 和 EC2 实例添加正确的入站安全组
- google-apps-script - 无法运行教程脚本
- android - 如何更改活动当服务器中的标志发生变化时,应用程序应该每 30 秒检查一次服务器#android?
- batch-file - 控制某个 MP 对象在播放音频文件时更改音量设置
- kdb - 向表中添加“求和”行
- java - JavaFX | IntelliJ 理念| ImageView 不显示 SceneBuilder 中显示的图像,它是预览
- javascript - Javascript:forEach 函数更改数据