我为游戏制作战利品记录器,当我尝试在启动时绘制主菜单标题时,没有任何事情发生。当我使用JButton调用完全相同的代码时,它可以正常工作
代码:
{"Content":
{
"LevelId":459,
"FieldContents":{
"17684":{
"Type":11,
"Value":[5433],
"FieldId":17684
},
"17687":{
"Type":23,
"Value":[222579],
"FieldId":17687
},
"17685":{
"Type":4,
"Value":[69678],
"FieldId":17685
}
}
}
}
但是当我这样称它时它起作用:
public Mainmenu(){
initComponents();
drawmenu();
}
private void drawmenu(){
Graphics g = jLabel1.getGraphics();
g.setFont(g.getFont().deriveFont(30f));
g.drawString("Loot Logger v.1.0", 215, 80);
}
答案 0 :(得分:1)
Graphics g = jLabel1.getGraphics();
g.setFont(g.getFont().deriveFont(30f));
g.drawString("Loot Logger v.1.0", 215, 80);
不要使用getGraphics(...)绘制标签(或任何Swing组件)。
您需要做的就是将标签添加到框架中,然后更改标签的文本:
jLabel1.setFont(...);
jLabel1.setText(...);
阅读How to Use Labels上Swing教程中的部分,了解更多信息和工作示例,以帮助您入门。