我在线程"main"java.lang.IllegalArgumentException中收到异常错误:非法组件位置.当我执行frame.add(label,JFrame.CENTER)时,它可以工作,但是当我更改它时,dosnt工作.
package com.java;
import javax.swing.*;
import sun.audio.*;
import java.awt.*;
public class PlayClip extends JFrame{
public static void frame(){
JFrame frame = new JFrame("COLLIN");
frame.setSize(1086, 1200);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
ImageIcon image = new ImageIcon("C:MYFILE");
JLabel label = new JLabel(image);frame.setResizable(false);
frame.add(label, JLabel.BOTTOM);
frame.setVisible(true);
}
public static void main(String[] args){
frame();
}
}
Run Code Online (Sandbox Code Playgroud) 您好我有一个问题,我必须打印出可被17整除的数字,但我想打印5个数字,然后跳到下一行.这是我的代码,不知道为什么它不起作用....
public class seventeen {
public static void main(String[] args) {
int num = 17;
System.out.print("The Numbers Divisible By 17 are: ");
int enter = 0;
for (int x = 1; x <= 10000; x++) {
if (x % num == 0) {
System.out.print(x + " ");
}
enter++;
if (enter == 5) {
enter = 0;
System.out.println();
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 在我的applet程序中,我在我的公共类头中声明了TextField:
TextField numbers [][] = new TextField[5][5];
Run Code Online (Sandbox Code Playgroud)
我还有一个按钮,用于在单击时清除所有文本框.
现在我基本上有这个:
JButton b = new JButton("Clear");
b.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
numbers.setText("");
}
});
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误:"无法在数组类型TextField [] []上调用setText(null)
我怎样才能解决这个问题?
先生们,
作为练习更多关于类和函数可访问性(例如公共,私有,静态等)的练习,我想编写一个具有以下属性的Java GUI(在Netbeans IDE中):
jButton无法从jTextField获取现有文本,读取/解析文本,获取最新数字,然后递增数字.
例如:
String someString = jTextField.getText();
int someInt = String.valueOf(someString);
someInt++;
String newString = new String();
newString = String.valueOf(someInt);
jTextField.setText()
Run Code Online (Sandbox Code Playgroud)
不被允许.
鉴于上述要求,该项目比看上去困难得多.根据要求,我将不得不在其他地方创建一个可以跟踪计数器值的类(请记住,禁止从TextField中提取当前计数器值).但是,由于Netbeans似乎不允许调用在别处(按钮外)实例化的对象的类方法,这似乎是不可能的.
在所有尝试之后,鉴于其限制,似乎在Netbeans中不可能满足上述4标准的GUI.
我最好的失败尝试 - 因此到目前为止(如果有意义的话)是这样的:
private void IncrementButtonActionPerformed(...){
CountObject C = new CountObject();
int i = C.IncrementCounter();// CountObject has a method for this.
// line or two here to typecast i into a String
jTextField.setText("i");
Run Code Online (Sandbox Code Playgroud)
但是,这不起作用,因为每次重新按下IncrementButton时,它都会简单地实例化一个新的CountObject.在此IncrementButtonActionPerformed事件处理程序之外实例化CountObject,然后从事件处理程序中调用CountObject.IncrementCounter()方法是不允许的,或者看起来如此.
我是否正确地认为上述要求1-4根本无法在Java Netbeans中完成?
谢谢,the_photon
我需要标签上有一个文本字段,但是当我运行此代码时,屏幕上没有文本字段。我该如何修复它。
JFrame jf = new JFrame() ;
JPanel panel = new JPanel() ;
JLabel label = new JLabel() ;
JTextField tField = new JTextField("asd" , 10) ;
label.add( tField ) ;
panel.add( label ) ;
jf.setSize( 500,400 ) ;
jf.add( panel ) ;
jf.setVisible(true) ;
Run Code Online (Sandbox Code Playgroud) 我之前将变量availability存储在 double 中,该变量存在于名为wrapper如下的类中 -
public final class Wrapper {
private final double availability;
Wrapper(){
this.availability = 2;
}
public Wrapper(final double availability){
this.availability = availability;
}
public double availability (){ // Need a confirmation if this is a getter ?
return this.availability;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我必须通过将可用性作为对象来稍微改变一下场景。原因是 -现在我们需要每个区域的可用性,与上面的情况不同。此外,我们现在需要在wrapper类中使用该可用性对象。
这就是我想做的 -
public final class Availability {
public enum Region {
US,
UK,
EU;
private final double availability;
Region () {
this.availability = 2;
}
Region …Run Code Online (Sandbox Code Playgroud) 为什么类型转换在这种情况下不起作用?
int b[] = {1,2,3,4,5};
ArrayList list = new ArrayList();
for (int i = 0; i < b.length; i++) {
list.add(i);
}
Collections.sort(list);
int c = (int) list.get(0); // This line is giving error
Run Code Online (Sandbox Code Playgroud)
如何解决这个错误?
只是希望我能找人告诉我我这样做是对的,因为我之前从未写过这样的东西.所以我必须编写一个名为ProcessQueue的类,它是Vector的子类,以及一个定义空队列的构造函数.Vector也将保存"对象"类型的项目.所以这里......
public class ProcessQueue<Vector>{
ProcessQueue(){}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个关于弹跳球的代码,但我仍然坚持如何让球反弹.代码似乎是正确的,没有来自eclipse的错误消息,但球不动.任何帮助/提示都很感激.
这是我的代码:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class BouncingBallTest extends JFrame {
private JButton jbtStart = new JButton("Start");
private JButton jbtStop = new JButton("Stop");
private Ball canvas = new Ball();
public BouncingBallTest() {
JPanel panel = new JPanel(); // Use the panel to group buttons
panel.add(jbtStart);
panel.add(jbtStop);
add(canvas, BorderLayout.CENTER); // Add canvas to centre
add(panel, BorderLayout.SOUTH); // Add panel to south
// register listener
jbtStart.addActionListener(new StartBouncingBallTest());
jbtStop.addActionListener(new StopBouncingBallTest());
}
// the main method
public static void main(String[] args) …Run Code Online (Sandbox Code Playgroud)