gpt4 book ai didi

java - 按钮未出现在框架中

转载 作者:行者123 更新时间:2023-11-30 04:10:56 25 4
gpt4 key购买 nike

在我的源代码中,

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;

public class Object6 extends JFrame {
JButton p = new JButton("Y");
JButton n = new JButton("N");

public Object6(){
setSize(1280,800);
setVisible(true);
setLayout(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void paint(Graphics g){
p.setLocation(590,500);
n.setLocation(590,550);
add(p);
add(n);
p.setSize(100,50);
n.setSize(100,50);
g.drawString("Does statement 6 apply?", 100, 100);
}
public static void main(String[]args){
new Object6();
}
}

按钮“p”,字符串出现;但是,只有当我单击它应该所在的空间时,按钮“n”才会出现。当我删除 g.drawString("Does statements 6 apply?", 100, 100); 时,两个按钮同时出现。

当两个按钮同时出现时,如何添加 g.drawString("Does statements 6 apply?", 100, 100);

最佳答案

  1. 您永远不应该在任何 paint 方法中修改 UI,这可能会导致 paint 方法被一次又一次地调用......直到它耗尽为止CPU 周期
  2. 您应该在构造函数中添加按钮
  3. 您应该适当使用布局管理器
  4. Swing 中的绘制由许多链式调用组成,这些调用累积起来绘制最终输出。为了保证绘画正确执行,必须调用super.paint
  5. 您应该避免覆盖顶级容器的paint,一般情况下您应该避免覆盖paint。相反,使用诸如 JPanel 之类的东西并重写其 paintComponent 方法

看看

关于java - 按钮未出现在框架中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19616326/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com