Tag: swing

为什么数据使用实例变量进行阴影操作在我的程序中不起作用?

对于游戏GUI,我有三个类,如下所示: – //this is the parent class. import javax.swing.*; import java.awt.*; public class GameGui extends JFrame{ public void decorateButton(JButton aBut,Color forg,Color back){ Font afont = new Font(Font.SANS_SERIF,Font.PLAIN,18); aBut.setFont(afont); aBut.setBackground(back); aBut.setForeground(forg); } public void setFrameDefault(){ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setSize(400, 475); this.setLocationRelativeTo(null); this.setResizable(false); } public void setConstraints(int x,int y,int weightx,int weighty,GridBagConstraints gbc){ gbc.weighty=weighty; gbc.weightx=weightx; gbc.gridx=x; gbc.gridy=y; } } //this […]

一个Runnable中的两个JFrame。 调用JFileChooser后,第一个JFrame在应用程序栏中消失

我正在尝试创建一个多窗口界面,ala GIMP。 其中一个允许用户加载图像,以显示在框架中。 因此,当程序加载时,所有窗口(现在两个,但我计划有三个)显示在应用程序栏中。 但是,当第二个*窗口调用JFileChooser时,它会在应用程序栏中消失( 但不会关闭 )。 但如果我+或+它仍会出现在那里。 当我单击“显示/隐藏所有Windows”按钮时,它也会再次出现在应用栏中。 从单个Runnable调用所有JFrame。 其他人遇到过这个问题? 我如何解决这个问题(即,始终在应用程序栏中显示所有窗口)? 谢谢! *我将它称为第二个窗口,因为它是第二个窗口,它是setVisibled为true。

使用UISpec4J获取所有窗口

我正在尝试使用UISpec4J来自动化Java Swing应用程序。 适配器设置后: setAdapter(new MainClassAdapter(Main.class, new String[0])); 我想获取主窗口: Window mainWindow = getMainWindow(); 而不是登录对话框,我得到一个带有应用程序徽标的闪屏。 我手动调用此对话框的所有尝试都失败了。 如何获取已打开的对话框/窗口列表?

隐藏/显示JTextField

我有一个JTextField,它在开始时必须隐藏,并且必须在特定情况下显示。 这是我的代码: package StudentNotes; import java.awt.BorderLayout; public class EditCourse extends JDialog { private JTextField textField; /** * Create the dialog. */ public EditCourse(JDialog mainFrame, final StudApp studAppObj) { super(mainFrame, ModalityType.APPLICATION_MODAL); setPreferredSize(new Dimension(330, 200)); setTitle(“Edit course”); setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); setAlwaysOnTop(true); ArrayList listCourses = studAppObj.getCorsi(); listCourses.toArray(); String[] listData = { “one”, “two”, “three”, “four”, “five”, “six”, “seven” }; final […]

Java Swing JList,不能设置最小宽度

尝试简单地创建具有指定可见行数但具有最小宽度的JList。 似乎“setMinimumSize()”没有做任何事情…… import java.awt.*; import java.awt.event.*; import javax.swing.*; public class UserInterface { final static private int HEIGHT = 400; final static private int WIDTH = 650; public static void main(String[] args) { JPanel content = new JPanel(); String[] entries = { “Entry 1”, “Entry 2”, “Entry 3”, “Entry 4”, “Entry 5”, “Entry 6” }; DefaultListModel […]

使用Swing设置选定的文本颜色

我想显示一个用户选择颜色的选定文本。我的问题是我选择了一些文本并点击settextcolor它应用于所有文本未选择的文本。请给我..这是我的代码: public class SetTextColor extends javax.swing.JFrame { int i=0; JTextPane textPane; JScrollPane scrollPane; public SetTextColor() { initComponents(); } @SuppressWarnings(“unchecked”) // private void initComponents() { tabbedPane = new javax.swing.JTabbedPane(); jMenuBar1 = new javax.swing.JMenuBar(); jMenu1 = new javax.swing.JMenu(); Create = new javax.swing.JMenuItem(); SetTextColor = new javax.swing.JMenuItem(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jMenu1.setText(“File”); Create.setText(“Create”); Create.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { […]

表单中的Java JComboBox在单击单元格之前未显示

好的,所以我有一个表设置,我已经在这里的示例中添加了一个JComboBox到特定的单元格,但由于某种原因,combobox将不会显示,直到选中该单元格。 如果我选择该单元格,combobox将打开它的列表供我选择。 无论我是否更改选择,如果单击表格中的另一个单元格,它将显示从combobox中选择的项目的文本,就好像它是根据需要显示在表格中的简单字符串一样。 我的问题是:如何让它在JComboBox中显示所选值而无需先选择单元格? 编辑:我忘了提到的一件事是; 而不是像之前那样手工声明DefaultTableModel data ,而是稍后使用model.addRow();将项目添加到DTM中model.addRow();

读取日志文件并在jTextArea中显示

我正在尝试读取动态更改的文件并在jTextArea中显示其内容。 我正在使用缓冲读卡器进行阅读。 我试图在控制台上显示内容,它工作正常,但不适用于jTextArea。 我正在做类似的事情 while(true) { line = br.readLine(); if(line == null) Thread.sleep(); else System.out.println(line); } 任何帮助,将不胜感激。 谢谢

试图获得一个swing菜单来使用GridBagLayout

我正在尝试构建一个带有两个垂直列的应用程序,锚定在左侧,右侧有一个大框。 我可以让第一个菜单坚持到右边,但由于某种原因,第二个菜单不会出现在第一个菜单旁边。 我已经阅读了有关额外空间被推向最后一列和最后一行(右侧)的内容。 我该怎么处理呢? PS我正在使用网格袋布局。 这是我得到的: 主UserView类:package gui; import actions.DepositAddButtonAction; import actions.DepositButtonAction; import javax.swing.*; import javax.swing.border.Border; import java.awt.*; public class UserView { public JFrame frame; private JPanel menuPanel; private JPanel secondMenuPanel; private JPanel contentPanel; private JButton depositButton; private JButton creditButton; private JButton exchangeButton; private JButton simulationButton; private JButton informationButton; private JLabel menuLabel; private GridBagLayout gridBagLayout; […]

添加/更改影响父级setBounds的JLabel

我还是Java的新手,我很喜欢乱搞它,所以请在此幽默我。 我知道布局管理器,但我对摆动的机制感兴趣,所以我使用绝对定位。 任何见解将不胜感激。 所以当我将JLabel添加到JPanel时,我注意到了一种恼人的行为。 例如,如果我这样设置: JFrame frame=new JFrame(“Test Frame”); frame.setSize(800,500); frame.setLocationRelativeTo(null); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setResizable (false); JPanel conPane=new JPanel(); conPane.setLayout(null); frame.setContentPane(conPane); conPane.setBounds(0,0,1600,1000); conTP.setFocusable(true); frame.setVisible(true); 所以现在我移动conPane面板…… conPane.setBounds(-200,-200,1600,1000); 然后制作一个新的JLabel …. ImageIcon ico=new ImageIcon(“directory/testimage.gif”); JLabel myLabel=new JLabel(ico);myLabel.setLayout(null); myLabel.setBounds(300,300,200,200); 并将其添加到conPane … conPane.add(myLabel); 它将conPane重置为它的起始位置。 在未经我许可的情况下基本上做setBounds(0,0,1600,1000); 如果我移动标签,更改它的图标或几乎做任何涉及改变conPane的孩子的事情,也会发生这种情况。 我怎么能阻止它?