这是功课.开始Java类.仍然围着这些东西缠头.
该项目是建立一个库存管理系统.
除了如何使这个按钮改变JTextField中的文本外,我已经弄明白了.它需要从产品数组中添加信息(在本例中为DVD).本书讨论了管理JTextField的字体,位置和状态等不同方法,但它不包括格式化或调用文本方法.
这是我想用JTextArea做的事情的一个例子.这基本上就是我想用JTextFields做的事情.
...
// setup the interface
JPanel panel = new JPanel();
txt = new JTextArea(15,40);
txt.setEditable(false);//user shouldn't change it
panel.add(txt);
JButton next = new JButton("Next");
panel.add(next);
getContentPane().add(panel);
displayDVD();
}
// view software
public void displayDVD() {
txt.setText("DVD Details:\n");
txt.append("Item number: " + inv.get(currentDisplay).getItem() + "\n");
txt.append("DVD name: " + inv.get(currentDisplay).getName() + "\n");
txt.append("Units in stock: " + inv.get(currentDisplay).getUnits() + "\n");
txt.append("Price: $" +
String.format("%.2f",inv.get(currentDisplay).getPrice()) + "\n");
txt.append("Total value: $" +
String.format("%.2f",inv.get(currentDisplay).value()) + "\n");
txt.append("Fee: $" + String.format("%.2f",inv.get(currentDisplay).fee()) …Run Code Online (Sandbox Code Playgroud) 如何在单击时用不同的渐变重新绘制JButton.我已经覆盖了paintComponent(Graphics)方法来进行初始绘制.Onclick我想要重新绘制它,但我不希望用户在actionperformed事件中执行此操作,因为我希望它是一个独立的组件.
任何想法如何实现这一目标.
谢谢
我在JButtons上有actionListener,如果按其中一个,我想以某种方式禁用actionlistener而不删除它.
是否可能或者我必须删除并再次添加actionListener.
抱歉.我忘了提,我设置了"button.setPressedIcon(icon)",我不想显示这个图标.所以提到的soulution - button.setEnabled(false)不会工作.
我有一个按钮,可以在Timer上设置时间.所以现在我推.计时器上的按钮更改时间仍然是选中状态.在这个框架中,我有keyListener,所以当我用启动推动空间计时器时,现在当我推动空间时,它再次按下这个按钮,因为它仍然被选中.当我按下它时如何改进此按钮,它将不会被选中?
我有一个带有两个JButton的jTextField(向上箭头和向下箭头按钮).单击向上箭头按钮,文本字段中的数值增加1(++),单击向下箭头按钮,文本字段中的数值减1( - ).
我想知道的是如何在按下按钮时自动"滚动/更改"值?
谢谢
我是Java的GUIS的新手,我正在尝试创建一个类似我附加的图像的GUI,但是有多个JLabel和JTextFields.我想将按钮放在屏幕底部的中央.
我该怎么做呢?请忽略黑线,因为我找不到更好的图像.

我从大学毕业,我必须在界面中有5个按钮,当点击按钮时,我必须对该按钮执行操作.但是当我在actionPerformed()中使用"this"时,它并没有引用"被点击的按钮",而且我无法锻炼实际所指的内容.
所以:
我想计算使用GUI点击按钮的次数.
我做了这个代码:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt)
{
int clicked = 0;
clicked++;
System.out.println(clicked);
}
Run Code Online (Sandbox Code Playgroud)
但它每次单击按钮时都会显示输出"1".
我希望每次单击按钮向我显示计数.
例如:如果我单击按钮两次,它应该输出"2".
所以我的问题是我需要这些方法一个接一个地运行,但我无法弄清楚如何使方法在运行之前等待.任何帮助表示赞赏.谢谢.这是我的代码:
public void startMoving() throws InterruptedException
{
moveEnemy("right",3);
wait();
moveEnemy("down",3);
wait();
moveEnemy("right",2);
wait();
moveEnemy("up",1);
wait();
moveEnemy("right",2);
wait();
moveEnemy("up",2);
wait();
moveEnemy("right",2);
wait();
moveEnemy("down",4);
wait();
moveEnemy("left",1);
wait();
moveEnemy("down",2);
wait();
moveEnemy("right",3);
wait();
moveEnemy("up",2);
wait();
moveEnemy("right",1);
wait();
moveEnemy("up",1);
wait();
moveEnemy("right",3);
}
public void moveEnemy(final String direction, final int numMoves)
{
Thread moveThread = new Thread(new Runnable()
{
public void run()
{
isMoving = true;
int originalX = getX();
int originalY = getY();
for(int loop = 0; loop <= 98*numMoves; loop++)
{
try
{
Thread.sleep(5); …Run Code Online (Sandbox Code Playgroud)