标签: jbutton

Java:我无法改变JButton的背景

问候大家.我正在编写一个java程序.我想改变JButton的背景,但我无法改变它.当功能结束时,颜色不会改变一点.这是我的代码:

public void initialization() {
        button = new JButton[size][size];
        mainPanel.setLayout(new GridLayout(0, size));
        for (int i = 0; i < size; i++) {
            for (int j = 0; j < size; j++) {
                button[i][j] = new JButton();
                button[i][j].setBackground(Color.BLACK);
                //button[i][j].setVisible(true);
                //button[i][j].setEnabled(false);
                mainPanel.add(button[i][j]);

            }
        }
        mainPanel.updateUI();
        System.out.print("Button Finished\n");
    }
Run Code Online (Sandbox Code Playgroud)

我希望有一个人可以帮助我.

java swing jbutton

3
推荐指数
1
解决办法
2230
查看次数

如何将JPanel绘制为Nimbus JButton?

在Nimbus的外观和感觉JButtons有一个非常整洁和准确的外观,圆形边框和漂亮的背景.
我想渲染一个具有相同外观的JPanel(显然它不会有按下状态等).
我有什么选择?

java swing jpanel jbutton nimbus

3
推荐指数
1
解决办法
868
查看次数

来自MenuItem/MenuBar和Sound Player的Java Exit按钮

好吧,我在视频/学校的java学习中作为初学者编写了这段代码,我得到了一些问题.

1 =>为什么文件>退出按钮不起作用并且有一个小箭头,好像有一些孩子一样?大退出按钮使用相同的功能.我从这里受到启发:http://www.youtube.com/watch? src_vid = FB_wJpIdA8k&feature = iv&annotation_id = annotation_40248&v = dwLkDGm5EBc

2 =>如何让该按钮变小?当我调整它时,它会更大.

3 =>有谁知道一个简单的声音播放器库?那么当我按下那个按钮播放声音时?我已尝试过一些网络示例,例如http://www.developer.com/java/other/article.php/2173111/Java-Sound-Playing-Back-Audio-Files-using-Java.htm并且不知道如何使它变得简单,并在SoundPlay(sound.au)等各处使用它;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;

public class form4 
{
    public static void main(String[] args)
    {
        // Frame
        JFrame frame = new JFrame("Menu");
        frame.setSize(300,300);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        // Just create menubar
        JMenuBar menubar = new JMenuBar();
        frame.setJMenuBar(menubar);

        // Add an JMenu
        JMenu file = new JMenu("File");
        menubar.add(file); …
Run Code Online (Sandbox Code Playgroud)

java swing jframe jbutton actionlistener

3
推荐指数
1
解决办法
4万
查看次数

在Java中,每次我向JPanel添加多个东西时,第二件事都没有创建?

我创建了一个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)

java swing jpanel jframe jbutton

3
推荐指数
1
解决办法
686
查看次数

如何在java中使一组jbuttons不可见

除了使用之外button.setVisible(false),还有一种简单的方法可以将一组设置jButtons为隐形和可见吗?

该算法如下 - 当用户点击结账按钮时,显示一组支付按钮(面额按钮).试图研究是否有更简单的方法来实现这一目标.

java swing visibility jbutton

3
推荐指数
1
解决办法
1万
查看次数

在动作事件期间在标签中设置文本

可能重复:
多次通过单击摆动按钮更改标签文本无法正常工作

我正在使用Java Swing开发一个GUI,其中我使用两个组件JButton和JLabel.JLabel的文本最初设置为"单击按钮".单击按钮后,我希望JLabel的文本更改为"Processing".最后到"Processed"

因此,当我单击按钮时,控件转到ActionPerformed,其中我使用setText()方法将JLabel的文本设置为"Processing".ActionPerformed中的最后一个语句是使用setText()将JLabel的文本设置为"Processed".

当我运行程序时,标签显示"单击按钮".最后它变为"已处理".但是,它从不显示"正在处理".

java swing text jlabel jbutton

3
推荐指数
1
解决办法
6万
查看次数

JButton&Action&KeyBinding

我创建了一个接收Action的JButton类,JButton类包括击键和鼠标监听器,因此我可以根据需要在多个帧中使用相同的类.

我的问题是:按下键时JButton没有得到焦点,但是它正在执行操作.我需要创建一个新的背景或告诉用户按钮执行操作的东西.

有任何想法吗??

这是我的代码:

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Insets;
import java.awt.event.KeyEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.Action;
import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.KeyStroke;
import javax.swing.SwingConstants;
import javax.swing.border.LineBorder;
import swtdesigner.SwingResourceManager;

public class IButtonSave extends JButton{
    private static final long serialVersionUID = 1L;
    private Action action = null;
    public IButtonSave() {
        super();
        setFocusPainted(true);
        setFocusable(true);

        try {
            jbInit();
        } catch (Throwable e) {
            e.printStackTrace();
        }
    }

    private void jbInit() throws Exception {
        setMargin(new Insets(0, 0, 0, 0));
        setBorder(new LineBorder(Color.black, 1, true));
        setIconTextGap(0); …
Run Code Online (Sandbox Code Playgroud)

java swing focus key-bindings jbutton

3
推荐指数
1
解决办法
4776
查看次数

是否可能:通过方法调用触发JButton事件 - 而不是JButton点击?

是否可以通过方法调用触发事件?(以及点击).下面是一个示例代码.它不是一个有效的代码,它只是演示了我的想象.

import java.awt.event.*;
import javax.swing.*;

public class Game extends JFrame
{

    JButton leftButton = new JButton("left");
    JButton rightButton = new JButton ("right");

    private JButton Move(String moveClickString)
    {
        JButton chosenButton = new JButton();

        if (moveClickString.equals("left"))
        {
            chosenButton = leftButton;
        }
        if (moveClickString.equals("right"))
        {
            chosenButton = rightButton;
        }
        return chosenButton;
    }

    public void actionTrigger(JButton buttonClick)
    {
        buttonClick.addActionListener(new ActionListener()
        {
            public void actionPerformed(ActionEvent e)
            {
                Object buttonPressed = e.getSource();

                if (buttonPressed == leftButton);
                {
                    //do left
                }

                if (buttonPressed == rightButton);
                {
                    //do …
Run Code Online (Sandbox Code Playgroud)

java events swing jbutton

3
推荐指数
1
解决办法
1万
查看次数

如何在JScrollPane上添加JButton?

嗨,我想在这里制作桌面应用程序我在使用jscrollpane.我想在jscrollpane中添加multipul按钮.我只能添加单个按钮,我该怎么做

我的代码如下

 public class AddingToJScrollPane {

  public static void main(String args[]) {
    JFrame frame = new JFrame("Tabbed Pane Sample");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JLabel label = new JLabel("Label");
    label.setPreferredSize(new Dimension(1000, 1000));
    JScrollPane jScrollPane = new JScrollPane(label);

    JButton jButton1 = new JButton("Hello");
     JButton jButton2 = new JButton("Hello");

    jScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    jScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    jScrollPane.setViewportBorder(new LineBorder(Color.RED));
    jScrollPane.getViewport().add(jButton1,jButton2);

    frame.add(jScrollPane, BorderLayout.NORTH);
    frame.setSize(400, 150);
    frame.setVisible(true);
  }
}
Run Code Online (Sandbox Code Playgroud)

更新的代码

public class AddingToJScrollPane {

  public static void main(String args[]) {
    JFrame frame = new JFrame("Tabbed Pane Sample");
    JPanel panel = new JPanel();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel.setLayout( …
Run Code Online (Sandbox Code Playgroud)

java swing jscrollpane jbutton

3
推荐指数
1
解决办法
6048
查看次数

Java swing错误"'void'类型不允许在这里"

我在这里不允许出现错误'void'类型

码:

public void create(JPanel jp){
    jp.add(new JButton().setPreferredSize(new Dimension(40, 40)));        
}
Run Code Online (Sandbox Code Playgroud)

但是当我使用相同的代码而没有.setPreferredSize(new Dimension(40, 40))它工作正常.

工作代码

public void create(JPanel jp){
    jp.add(new JButton());
}
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jbutton

3
推荐指数
1
解决办法
363
查看次数