Tag: swing

如何保存程序的状态然后加载它?

我正在尝试保存并重新加载我的Swing程序的状态,在这种情况下是一个扫雷游戏。 我的董事会代码如下。 package mines; import java.awt.Graphics; import java.awt.Image; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.util.Random; import javax.swing.BorderFactory; import javax.swing.ImageIcon; import javax.swing.JLabel; import javax.swing.JPanel; public class Board extends JPanel { public static void main (String[] args) {} private final int NUM_IMAGES = 13; private final int CELL_SIZE = 15; private final int COVER_FOR_CELL = 10; private final […]

如何从项目文件夹中检索图像?

我正在尝试创建一个Java桌面应用程序,我有一个JLabel ,我在那里随机播放图像。 我正在从我的电脑的任何驱动器上的文件夹中检索图像。 现在我想从图像文件夹名称可用的项目文件夹中检索所有图像。 F:/>Kiosk | |___src | |___lib | |___koisk | |__main1.java | |__images 这是我的代码我怎样才能实现这一目标? public class ImageShuffle1 extends JPanel { private List list = new ArrayList(); private List shuffled; private JLabel label = new JLabel(); private int width = 700; private int height = 700; private Timer timer = new Timer(1000, new ActionListener() […]

AbstractTableModel GUI显示问题

我正在为数据库制作一个GUI项目,有两个类用于GUI’s 。 连接器类用于连接用户凭据。 如果凭据正确,则获取AbstractTableModel中的所有数据。 当程序运行时,第一个GUI有一个按钮,我们在其中单击它并获取底层TableModel所有数据。 但我面临两个问题。 首先在GUI2类中,有时它会像这样打开。 有时它显示这样 http://imageshack.com/i/p3gBDt9Ej 我不知道为什么会这样。 第二个问题是当我们从表中选择任何行并单击DeleteSelectedRow按钮时它会删除该行。 此按钮在GUI2类中有一个ActionListener 。 但我想要的是我删除行时自动更新表。 我怎样才能做到这一点? 第一个GUI类 public class Gui extends JFrame { private static Connector conni; private Connection conn = null; private JButton bt; private JPanel panel; public Gui() { super(“Frame”); panel = new JPanel(); bt = new JButton(“Connect to Database ‘World'”); panel.add(bt); bt.addActionListener(new ActionListener() […]

使用setValueAt重新创建互斥复选框

我有一个使用自定义DefaultTableModel的JTable,它在最后一列中有一些布尔值(显示为勾选框)。 当我添加一个MouseListener来检索被点击的值时,似乎不再发生勾选框的切换。 // As soon as this is used in the component // that is using the JTable, the toggling stops table.addMouseListener(new MouseAdapter() { public void mouseClicked(MouseEvent evt) { int col = table.getSelectedColumn(); int row = table.getSelectedRow(); Object o = table.getModel().getValueAt(row, col); 我假设侦听器正在使用该事件。 我可以将哪些内容添加到MouseListener代码以恢复切换行为? 编辑: 哎呀,似乎问题在于我的覆盖: @Override public void setValueAt(Object aValue, int row, int column) […]

如何在Java Swing中从JTextField中检索值?

我们如何从textfield和actionPerformed()检索值? 我需要将值转换为String以进行进一步处理。 我创建了一个文本字段,单击一个按钮,我需要将输入的值存储到String中,您能提供一个代码片段吗?

如何在Java窗口外获取鼠标点击坐标

我需要使用Swing实现一个类,当用户点击屏幕上的任何位置时,可以获取鼠标坐标。 如果我想在我自己的窗口中获取鼠标坐标,我会使用MouseListener ,但我希望它能够工作,即使用户点击我的程序外。 我希望我的课程表现得像KColorChooser :用户点击下拉按钮,他可以点击屏幕上的任意位置以获得该点的颜色。 但我不知道是否可以使用纯Java。

为什么不扩展JFrame和其他组件?

我已经看到过这里出现过几次,但在我看过的post中,没有人解释过。 为什么我不应该扩展JFrame(或任何组件)? 是否存在我应该扩展组件的条件,或者这是一个你不应该遵守的坚定规则?

按名称获取Swing组件

我在JFrame有一些组件,我想引用另一个JFrame ,我希望通过名称获取它们,而不是为每个组件执行公共get / set方法。 是否有一种方法可以让Swing通过其名称获得组件引用,例如do c#? 例如form.Controls[“text”] 谢谢

阻止窗口显示直到完全绘制?

我正在开发一个Java程序,它接收大量文件(最多3000个)和一个相关的1/0数组。 目前我有一个数组的可视化,其中有一个网格,其中每个框填充为黑色为1或白色为0.当绘制它运行良好但需要大约一分钟才能完全加载(并且可能在此期间锁定计算机。 )有没有办法:1,在完成之前不要显示窗口 (即JFrame创建, //画窗口 frame.setVisible(真)) 和2,跟踪进程的进度,以便我可以使用进度条吗? 编辑:我可以运行一个线程来绘制它,然后简单地创建一个while循环只在线程完成后显示它吗?

如何更改鼠标按下时的JButton颜色?

我想根据鼠标事件(鼠标进入,退出,按下等)获得自定义颜色。 所以为了实现这一点,我写了下面的代码。 它对一切都很好,除了鼠标按下事件的情况,它什么都不做。 它只有在我覆盖UIManager的颜色时才有效,就像这个UIManager.put(“Button.select”, Color.red); 。 UIManager问题在于它会改变我的所有按钮。 任何人都可以告诉我,我可能做错了什么,或者最好的办法是什么,我要做的是什么? 我的代码: final JButton btnSave = new JButton(“Save”); btnSave.setForeground(new Color(0, 135, 200).brighter()); btnSave.setHorizontalTextPosition(SwingConstants.CENTER); btnSave.setBorder(null); btnSave.setBackground(new Color(3, 59, 90)); btnSave.addMouseListener(new MouseListener() { @Override public void mouseReleased(MouseEvent e) { btnSave.setBackground(new Color(3, 59, 90)); } @Override public void mousePressed(MouseEvent e) { // Not working 🙁 btnSave.setBackground(Color.pink); } @Override public void mouseExited(MouseEvent […]