小编Hov*_*els的帖子

与大圈子Java的单选按钮小组

对于Java Swing中的应用程序(在netbeans中开发),我们需要像单选按钮一样创建大圆圈,这意味着我们有一组圆圈,每当用户点击一个圆圈时,它就会变为一个实心圆圈.用户只能选择1个圆圈.

工作mechansim与radiobutton组完全相似,只是我们需要更大的圈子.知道我们怎么做到这一点?

java swing button radio

0
推荐指数
1
解决办法
789
查看次数

Timer(构造函数计时器(int,actionlistener)未定义

我一直在寻找其他一些线程和不同的方法来解决这个问题,并且我一直得到同样的错误.我遗漏了包裹并进口了.我正在使用Thread但是,我读过你不应该将它们用于GUI.

public class Game extends JPanel{

Player player = new Player(this);

public Game(){
    addKeyListener(new KeyListener(){
        @Override
        public void keyTyped(KeyEvent e){
        }

        @Override
        public void keyReleased(KeyEvent e){
            player.keyReleased(e);
        }

        @Override
        public void keyPressed(KeyEvent e){
            player.keyPressed(e);
        }
    });
}

public void move(){
    player.move();
}

@Override
public void paint(Graphics g){
    super.paint(g);
    Graphics2D g2d = (Graphics2D) g;
    g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
            RenderingHints.VALUE_ANTIALIAS_ON);

    player.paint(g2d);
}

public void timer1(){
     int delay = 10; //milliseconds
      ActionListener taskPerformer = new ActionListener() {
          public void actionPerformed(ActionEvent evt) {
           System.out.println("Running");
          }
      };
      new …
Run Code Online (Sandbox Code Playgroud)

java swing timer

0
推荐指数
1
解决办法
2442
查看次数

我的equals方法输出为true,而它应该为false

我正在编写代码,并遵循给予我的所有指示.当我运行程序但是相同的方法时,所有的代码和方法看起来都很好!基于这些说明,当测试询问点(a,b)---(c,d)是否等于(e,f)---(g,h)时,我应该得到假,但是我得到了真正.谁能让我知道我做错了什么?先感谢您!

 /**
     * The equals method should return true if the given object is equal to the
     * the Object passed in.  Note that this method receives an Object; there is
     * a particular way that this method should be implemented (see notes from class).
     *
     * Notice that two Segments are equal even if their endpoints are swapped
     *  i.e.: (1, 2)---(3, 4) == (3, 4)---(1, 2)
     */

public boolean equals(Object obj) {
        //if (obj instanceof Segment) {
            //Segment …
Run Code Online (Sandbox Code Playgroud)

java methods equals

0
推荐指数
1
解决办法
141
查看次数

引用通过方法分配的按钮的名称

就像一个背后的故事,我真的进入java并一直在观看所有这些视频等在线,我决定虽然学习它是好的,如果我不能实际使用它,它毫无意义.所以我带了一个计算器.除了一件事,一切都很顺利.

为了展示我的懒惰,我创建了一个接受参数的方法,并使用它们通过简单的方法调用来构建JButton.该代码是:

public class GUI_Element_Methods{

private JButton button1;
private JButton numpad[];


public void createButton(String buttonText, ActionListener eventMethod, boolean visible, String tooltipText){

    button1 = new JButton(buttonText);
    button1.addActionListener(eventMethod);
    button1.setVisible(visible);
    button1.setToolTipText(tooltipText);

}

public JButton getButton1(){
    return(button1);
}
Run Code Online (Sandbox Code Playgroud)

被召唤:

guiElement.createButton("+", asHandler, true, "Addition");
    add(guiElement.getButton1());
Run Code Online (Sandbox Code Playgroud)

我工作得很好,但是我无法检测一个动作是否是事件处理程序中的某个按钮,因为它们都通过这个"button1"JButton运行.例如,毕达哥拉斯定理,它有两个基于你想要解决的变体,我想只使用一个事件处理程序来检测哪一个被按下.

if(event.getSource().equals()){
}else{
}
Run Code Online (Sandbox Code Playgroud)

那是我假设我会把它,我只是不知道如何引用方法创建按钮.

java swing calculator

0
推荐指数
1
解决办法
58
查看次数

在java中创建一个包含10个唯一数字的数组

这是我第一次问这个问题.

我想用0到9的10个唯一的int数字制作ArrayList.我接下来的步骤:

  1. 创建空Arraylist
  2. 添加第一个随机数,以便稍后检查重复
  3. 接下来我创建新的随机int值,检查我是否已经在ArrayList中使用了这个值.如果我有 - 我尝试另一个号码,如果我没有 - 我添加这个号码.
  4. 如果我得到10个数字,我会停止循环

我的代码:

public static void main(String[] args) {

    Random rd = new Random();
    ArrayList<Integer> list = new ArrayList<Integer>();

    int q = rd.nextInt(10);
    list.add(q);

    while (true) {
        int a = rd.nextInt(10);
        for (int b=0;b<list.size();b++){
            if (a == list.get(b)) break;
            else list.add(a);
        }
        if (list.size() == 10) break;
    }
    System.out.println(list);
}
Run Code Online (Sandbox Code Playgroud)

但我在控制台看到的只是无休止的过程.

问题是 - 是否有另一种方法可以使ArrayList具有10个唯一数字(0到9)?

java arraylist

0
推荐指数
1
解决办法
1347
查看次数

找不到变量e.getkeycode

我是一个使用Java的初级程序员,我正在尝试制作一个游戏,你可以通过移动的箍扔盘.盘具有恒定的向下力,可以使用向上键向上移动; 然而,之前我甚至添加任何碰撞检测,我开始收到一个错误说Java编译找不到可变eKeyEvent.我在网上到处看,我确信我只是犯了一个愚蠢的错误,但有人可以看看这个.

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import javax.swing.JPanel;
import javax.swing.JFrame;
import java.util.Random;

@SuppressWarnings("serial")
public class DiscHoopToss extends JPanel{

    int x = 710;
    int y = 150;
    int xm = -3;
    int ym = 1;
    int xr = 2;
    Random rng = new Random();
    int r = rng.nextInt((220-20)+1)+20;

  public DiscHoopToss() {
    KeyListener listener = new KeyListener() {

        @Override
        public void keyTyped(KeyEvent e) {
        } 

        @Override
        public void keyPressed(KeyEvent e) {
        if …
Run Code Online (Sandbox Code Playgroud)

java swing keyevent keylistener

0
推荐指数
1
解决办法
381
查看次数

action对按钮事件的混淆

我试图在java中制作一个游戏,当按下一个按钮时我希望它改变图标以指示该按钮已被选中,然后当再次点击它时我想将其更改为其原始图标以显示它已被取消选择.

public void actionPerformed(ActionEvent e)
{
    if(e.getSource() == b[7][4] && selected == false)
    {
        b[7][4].setIcon(selected);
        selected = true;
    }

    if(e.getSource() == b[7][4] && selected == true)
    {
        b[7][4].setIcon(king);
        selected = false;           
    }
}
Run Code Online (Sandbox Code Playgroud)

此代码目前按照我的意愿执行,但它同时运行,因此更改图标,然后立即将其更改回原始图标.如何将其更改为一次selected,然后第二次单击将其更改为king图标?

java swing actionlistener

0
推荐指数
1
解决办法
35
查看次数

如何在游戏循环中使用 repaint() 方法

我正在尝试学习如何使用 java 创建一个游戏循环并每秒绘制一个新屏幕一定次数。游戏循环工作正常,但是当我尝试使用 repaint() 调用paint方法时,未调用paint方法。这是我的代码:

import javax.swing.JButton;
import javax.swing.JComponent;
import java.awt.Graphics;
import javax.swing.JFrame;
import java.awt.image.*;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;

public class mainFrame extends Thread{
static boolean gameIsRunning = false;
MyCanvas2 myCanvas2 = new MyCanvas2();
static final int TARGET_FPS = 1;
static int x = 10;
static int y = 10;
static long startTime = 0;
static long elapsedTime = 0;
static long waitTime = 0;
public void createFrame(){
  JFrame window = new JFrame("Out from …
Run Code Online (Sandbox Code Playgroud)

java swing repaint game-loop graphics2d

0
推荐指数
1
解决办法
2532
查看次数

如何从静态方法中获取总数

好的,所以我已经发布了第一部分(我没有获得热狗机销售的正确输出)并获得了大量的帮助,但现在我无法想出从所有不同的展台返回正确的总数.我通过使用'this'关键字让支架增加,但我无法弄清楚如何让静态getTotal正确地增加所有支架.

public class HotDogStand {

    //instance variable declaration
    private int IDNumber;
    private int hotDogsSold=0;
    private static int totalSold=0;
    //constructor
    public HotDogStand(int ID, int sold)
    {
        this.IDNumber=ID;
        this.hotDogsSold=sold;
    }
    //sets ID for all the stands
    public void setID(int ID)
    {
        this.IDNumber=ID;
    }
    public int getID()
    {
        return IDNumber;
    }
    //invoked each time a stand makes a sale
    public void justSold()
    {
            this.hotDogsSold++;
            totalSold=hotDogsSold;
    }
    //gets the totals for the different stands
    public int getSold()
    {
        return this.hotDogsSold;
    }

    // returns total …
Run Code Online (Sandbox Code Playgroud)

java variables methods static

0
推荐指数
1
解决办法
423
查看次数

使用JFreeChart <java>将动态折线图添加到现有JFrame中的JPanel

当我在JFrame应用程序中单击"开始"时,我创建了一个应用程序,可以显示Max,Minimum和Average ping.我做了一个白色的盒子,所以我可以适应一个动态变化的线图,它将与我的统计数据在同一个窗口中,并将以与我的统计数据相同的速率更新(1秒).

无论我谷歌多少,每个人似乎都了解JFreeChart示例代码.我根本不明白如何实现这一点.其他教程仅在其自己的窗口中显示该图形.

我希望有人可以帮助我.这是我现在的JFrame代码:

 private void startButtonMouseClicked(java.awt.event.MouseEvent evt) {                                         
   String host = hostName.getText();


    ScheduledExecutorService exec = Executors.newSingleThreadScheduledExecutor();
    exec.scheduleAtFixedRate(new Runnable(){
        @Override
        public void run(){

            try { 
                NetworkAnalyzer.pingCheck(host);

            } catch (IOException ex) {
                Logger.getLogger(NetworkAnalyzerwindow.class.getName()).log(Level.SEVERE, null, ex);

            }
        }
    }, 0, 1, TimeUnit.SECONDS);
Run Code Online (Sandbox Code Playgroud)

这是我的pingCheck:

public class NetworkAnalyzer {
static int count=0;
static long max_time = 0;
static long min_time = 0;
static long avg_time = 0;

public static void pingCheck(String host) throws IOException{
String time = "";
//command to execute
 String pingCmd = …
Run Code Online (Sandbox Code Playgroud)

java swing linechart dynamic jfreechart

0
推荐指数
1
解决办法
437
查看次数