我创建了一个JPanel并添加了几个简单的按钮,并附加了监听器.然后我决定将一个Image添加到我的面板的背景中,所以我将我的JPanel切换到了ImagePanel.按钮正在JPanel上工作,但现在我为要显示的背景图像添加了一堆代码,按钮不再显示.我没有更改任何按钮添加代码,所以我很困惑为什么按钮不再显示.这也发生在我单独的GameFrame类中.我在面板中添加了2个矩形组件,然后是3个按钮.对于该面板,只有按钮显示,尽管在添加按钮之前矩形工作.我可以每个面板只有一种类型的JComponent吗?我真的不明白为什么这样做.感谢您的时间.
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TitleFrame extends JFrame
{
private ImagePanel panel;
private JButton mage;
private JButton rogue;
private JButton warrior;
private Image image;
public TitleFrame()
{
JFrame frame = new JFrame();
frame.setSize(1024, 768);
frame.setTitle("Title Screen");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
createMageButton();
createRogueButton();
createWarriorButton();
ImagePanel panel = new ImagePanel(new ImageIcon("C:/Users/Derek Reitz/Documents/Eclipse Projects/GameApp/src/background.jpg").getImage());
panel.add(mage);
panel.add(rogue);
panel.add(warrior);
panel.paintComponent(frame.getGraphics());
frame.getContentPane().add(panel);
}
private void createRogueButton() {
rogue = new JButton("Select Rogue"); …Run Code Online (Sandbox Code Playgroud) 我在pydev中创建了一个名为"Main"的文件,里面写道:
if __name__ =='__Main__':
main()
def main():
print("jargon")
Run Code Online (Sandbox Code Playgroud)
它说我在if语句下对main()的调用包含一个未定义的变量,不会编译.为什么这样做?
我有一个JButton使用setToolTipText(String str),我在工具提示中有几行写作需要通过换行符分隔.在我想要换行之前,我尝试在每行文本的末尾连接+"/ n",但它没有做任何事情.JToolTiptext没有带有a的构造函数,JTextArea我看不到任何JTextArea允许它转换为a的内容String.有人有主意吗?另外,如何让a JToolTip持续时间超过默认的3秒?感谢您的时间.
在C++标准库中,有一个名为pair的对象.Pair.first和Pair.second分别返回pair对象的第一个和第二个值.我想在条件下将第一个值递增一(我的对是一对).当我尝试这样做时,它正在抛出"需要1值".这可能是因为我不是通过引用传递值的某个地方,但它也可能是.first不会通过引用返回该对的第一个值.有谁知道它是否存在?