java - 如何在Java Canvas 中添加这个按钮?

标签 java swing canvas awt jframe

如何在此 Canvas 上添加按钮?就像 float ...在顶部而不是使用 add(button) 将其放在网格中;

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Myscreensaver extends Window 
{
  private static final Canvas canvas = new Canvas();
  private Button button;

  public Myscreensaver()
  {
    setLayout(new GridLayout(2,2));
    canvas.setPreferredSize(new Dimension(200, 200));
    add(canvas);
    //add(button); no add the button in the canvas not in the grid, then it looks odd.
  }
}

最佳答案

为什么不使用 Swing 而使用 AWT。毕竟您正在导入 javax.swing.*。然后您将使用 JWindow。

如果您希望组件 float 在中心,那么您应该使用不同的布局管理器。也许是 GridBagLayout。

setLayout( new GridBagLayout() );
add(button, new GridBagConstraints());

关于java - 如何在Java Canvas 中添加这个按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6670273/

相关文章:

java - 按换行符分割 Java 字符串

java - 在 JAVA 中使用 Bouncy CaSTLe PGP 加密/解密文件

java - 在 jTextArea 上附加不同颜色的错误消息

java - 试图在点击时更改按钮名称

java - 使用 jLabels 在每次击键后显示来自 jTable 的文本(数据)

javascript - HTML5 Canvas 线性图像动画

java - 如何返回对象列表以及异常

java - 是否可以将 Mockito mock 配置为在一次调用中调用多个答案?

javascript - 如何在 JavaScript 中实现多线程?

javascript - 有没有办法修改 Canvas 中的像素而不必复制整个缓冲区?