Tag: 用户界面

错误表示在尝试将字符串转换为double时已在main中定义的变量,然后表示未知符号

我已经找了40多分钟试图在这个网站上找到可能与我的问题有关的答案无济于事。 我很难过。 我正在尝试将程序转换为GUI。 我正在使用Textpad,它在编译时告诉我变量已在main方法中定义。 然后当转换为int或double时,它告诉我它找不到符号并指向我想要转换的变量。 然后在我的计算过程中,它告诉我二进制运算符’*’的错误操作数类型。 import javax.swing.JOptionPane; public class PayrollGUI { // calculates payroll public static void main (String [] args) { String name = JOptionPane.showInputDialog (“Employee’s Name: “); int name = Integer.parseInt(nameString); String hours = JOptionPane.showInputDialog (“Number of hours worked in a week (eg, 10: “); int hours = Integer.parseInt(hoursString); String payRate = […]

如何在Netbeans GUI Builder中根据父JLabel的大小自动缩放图像大小?

背景: –我需要使用Netbeans GUI Builder制作Swing GUI。 第一个子任务是在整个背景中显示图像。 我已经按照教程完成了这项工作。 我基本上已经创建了一个JFrame,将其布局设置为GridBagLayout,然后添加透明(通过取消选中opaque属性)JPanel。 (问题1) 之后我将JLabel添加到JFrame,删除了它的文本并添加了一个图像。 (问题2) 问题: – 首先,当我添加JPanel时, 它不显示其resize句柄。 我用Google搜索了一下这个教程 ,在其中可以看到,当他们创建JPanel时,它会自动显示其resize句柄,可以拖动它来resize。 但是我没有 (截图如下) 那么是否有一些属性或某些东西可以调整以便我可以resize? 因为我的意图是使用这个透明面板来包含背景上的组件(按钮等),所以它应该经过整个屏幕/窗口/ JFrame父级。 其次,由于我使用的图像有一些1024×768的尺寸,所以它看起来比它的父组件大。 由于我是菜鸟,我不确定是否需要通过某种方式测量父级的像素宽度和像素高度来调整背景图像的大小,然后在某些程序(如Adobe Photoshop)中将实际图像的大小转换为该大小。 但我相信必须有更实际的方法来做到这一点。 我希望图像在最初放置在父JLabel上时根据父级的大小自动resize。 我怎样才能做到这一点? 请告诉我最简单的方法,最好是在GUI Builder中。 我还想确保图像大小,其父JLabel的大小,JPanel的大小都将在我稍后使用此应用程序时更改窗口大小时调整到帧,或者是否有办法禁用大小调整完全是窗户。 EDIT1 @Braj /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | […]

动态添加的JPanels没有出现在Swing中

这是我的代码。 显示先前设计的框架(添加了面板)时没有问题。 我在动态地向空JFrame添加面板时遇到此问题。 package com.mytunes.controllers; import com.mytunes.views.*; import com.mytunes.views.panels.*; import java.awt.BorderLayout; import java.lang.reflect.Constructor; import java.lang.reflect.InvocationTargetException; import java.util.ArrayList; import java.util.logging.Level; import java.util.logging.Logger; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.WindowConstants; public class GUIController { ArrayList displayFrames = new ArrayList(); JPanel displayPanel; HeaderPanel headerPanel = new HeaderPanel(); FooterPanel footerPanel = new FooterPanel(); public int showFrame(String frameName, Object […]

如何从具有GridBagLayout布局的JPanel获取位于特定gridx中的组件,gridy?

我有一个带有gridbaglayout布局的jpanel,其中有几个jtextfields,几个jlabels,几个动态添加的jbuttons。 因此我无法知道他们的具体命令,因此无法使用panel.getComponent(count)。 如果有像getGridx(int x)或getGridy(int y)这样的东西,我查看了api。 没找到。 有什么类似的方法吗?

JTabbedPane中的选项卡不会反映按下按钮时的更改

在我的GUI的选项卡中,允许用户编辑员工的姓名。 该名称还用作选项卡的标签,因此在确认更改时,应更新选项卡以反映此更改,并将新数据写入数据文件。 员工存储在Employees类的HashMap中。 通过迭代员工姓名的ArrayList来填充选项卡,这是通过调用方法Employees.getNames() 。 在GUI中,用户可以键入新名称,然后按更改名称按钮。 按钮的ActionListener调用方法changeName() ,该方法用HashMap的新名称替换旧名称并更新数据文件。 这在用户第一次想要更改员工姓名时正常工作,但后续更改会产生错误。 看来包含JTextFields的JPanel (参见下面的getEmployeeInfoPanel() )没有更新参数name 。 此参数是员工的当前名称,而新名称是从JTextField 。 下面说明这个问题的一个例子。 基本上,步骤是: 1. old name = Mary is provided when the program starts 2. User changes name in JTextField, so oldName = Mary and newName = Mary S. 3. At this point, oldName should update to Mary S. as it […]

带有背景图像的JPanel,其他面板重叠

我想要一个使用图像作为背景的JPanel,我希望在这个面板中添加新面板,使它们位于此背景图像的顶部。 我尝试过以下方法: Image background; public Table(){ super(); ImageIcon ii = new ImageIcon(this.getClass().getResource(“pokerTable.png”)); background = ii.getImage(); setSize(Constants.FRAME_WIDTH, Constants.TABLE_HEIGHT); } @Override protected void paintComponent(Graphics g) { super.paintComponent(g); if (background != null){ g.drawImage(background, 0,0,this.getWidth(),this.getHeight(),this); } JButton button = new JButton(“hello world”); JPanel OverlayedPanel1 = new JPanel(); OverlayedPanel1.setMinimumSize(new Dimension(600,50)); OverlayedPanel1.setMaximumSize(new Dimension(600,50)); OverlayedPanel1.setPreferredSize(new Dimension(600,50)); OverlayedPanel1.add(button, BorderLayout.CENTER); OverlayedPanel1.setBackground(Color.yellow); } 显示背景图像,但OverlayedPanel1不显示。 有任何想法吗?

JInternalFrame前面和焦点

如何将JInternalFrame推送到JDesktopPane中所有帧的顶部?

Java GUI,需要暂停一个方法而不冻结GUI

我知道这个问题是由主线程上的睡眠或等待调用引起的,关于如何解决这个问题的答案是将方法放入一个单独的线程然后让该线程进入hibernate状态。 但代码是一团糟,并没有真正的时间来解决它并将其拆分为单独的线程,并想知道是否有任何其他方式这样做? 即使它不是使用GUI的最干净或最常见的做法。 我只需要从该方法暂停几秒钟。

如何删除JButton上的图标?

我正在尝试制作一个记忆匹配游戏,并且我点击时将我放置在JButton上的图标图像。 我的问题是,有没有办法从JButton中删除图标? 我想在用户点击时显示图像,显示图像,如果用户点击的第二个按钮与第一个按钮没有相同的图像,那么它就会消失……任何想法?

按下一个按钮,在java的新窗口中打开一个文件

我已经创建了一个JFrame和一个文本字段和按钮。在文本字段中我已经从文本文件中读取了一个名称。我想要点击按钮并打开一个知道窗口,我想在其中输入名称+其他信息来自同一个文件。 这是我的代码:这是我的主框架 package Frontend; import Business.ShowDetails; import model.*; import java.awt.*; import java.awt.event.*; import java.io.*; import java.util.*; import javax.swing.*; public class Gui { //String file=” “; private JFrame frame; private JPanel panel1 ; private JPanel panel2; private JPanel panel; private JTextField nume1; private JTextField nume2; private JTextField nume3; private JTextField nume4; private JTextField nume5; private JButton […]