java swing按钮事件。

要制作如图要求的一个界面,现在卡在给按钮提供方法那里,不知道该怎么返回得到的数组给列表。图片说明

import java.awt.*;
import java.awt.List;

import javax.swing.*;
import java.awt.event.*;
import java.util.*;
public class work2 {
    private JFrame jf = new JFrame("随机数序列排序");
    private Container c = jf.getContentPane();
    private JLabel a1 = new JLabel("长度");
    private JTextField length = new JTextField(5);
    private JLabel a2 = new JLabel("范围");
    private JTextField limit = new JTextField(5);
    private JButton creat = new JButton("生成");
    private JButton sort = new JButton("排序");
    private String[] list_1;
    private String[] list_2;
    private String[] list_3;
    private JList list1 = new JList();
    private JList list2 = new JList();
    private JList list3 = new JList();
    private JScrollPane gundong1 = new JScrollPane();
    private JScrollPane gundong2 = new JScrollPane();
    private JScrollPane gundong3 = new JScrollPane();

    public work2()
    {
        jf.setBounds(400,500,1000,300);
        c.setLayout(new BorderLayout());
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jf.setVisible(true);
        init();
    }
    public void init()
    {
        //面板的上边
        JPanel title = new JPanel();
        title.setLayout(new FlowLayout());
        title.add(a1);
        title.add(length);
        title.add(a2);
        title.add(limit);
        title.add(creat);
        title.add(sort);
        c.add(title,"North");
        //面板的下边
        JPanel list = new JPanel();
        list.setLayout(new FlowLayout());
        gundong1.setBorder(BorderFactory.createTitledBorder("随机数序列"));
        gundong2.setBorder(BorderFactory.createTitledBorder("排序序列(升序)"));
        gundong3.setBorder(BorderFactory.createTitledBorder("降序序列(降序)"));
        gundong1.setViewportView(list1);
        gundong2.setViewportView(list2);
        gundong3.setViewportView(list3);
        list.add(gundong1);
        list.add(gundong2);
        list.add(gundong3);
        c.add(list,"Center");
    }
    public void listerner()
    {
        creat.addActionListener(new ActionListener() {

            @Override
            public void actionPerformed(ActionEvent e) {
                int len = Integer.parseInt(length.getText());
                int limits = Integer.parseInt(limit.getText());
                Random ra = new Random();
                int[] arr1 = new int[len];

                for(int i=0;i<len;i++)
                {
                    arr1[i] = ra.nextInt(limits);
                    list_3[i] = String.valueOf(arr1[i]);
                }
                list1.add(list_3);
            }

        });
    }
    public static void main(String[] args)
    {
        new work2();
    }
}
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
java swing 按钮事件处理问题
import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Hello { static int i; public static void main (String args[]) { String s[] = {"7","8","9","4","5","6","1","2","3"}; JButton b[] = new JButton[9]; JFrame frame = new JFrame(); frame.setLayout(new GridLayout(3,3,3,3)); for(i = 0; i<s.length; i++){ b[i] = new JButton(s[i]); frame.add(b[i]); } frame.setLocation(200,200); frame.setSize(380,390); frame.setVisible(true); for(i = 0; i<b.length; i++){ b[i].addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg) { if(arg.getSource() == b[i]){ System.out.println(b[i].getText()); } } }); } } } 编译不报错,运行后按下按钮报错: Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: 9 at Hello$1.actionPerformed(Hello.java:24) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2236) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2294) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4888) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4525) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4466) at java.awt.Container.dispatchEventImpl(Container.java:2280) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
java swing 事件与画图
java代码 要求画一个圆,两个按钮。一个按钮变大,一个按钮变小。要求添加按钮 监听事件。点击变大圆半径变大,点击变小圆半径变小。设置键盘事件,按下 up,down,left,right圆会向相应的方向移动坐标
java swing 中事件处理读取参数问题
在MyFrame类中有一个static double[][]二维数组,添加button按钮事件生成一新的类似于Excel窗口,输入数据并存入MyFrame的静态数组中。但是在MyFrame中读取这个数组时总是不能正确地读出输入的数据,而是未初始化时的空数组。请问这是什么问题?应该怎么读呢。
java swing 有几个排列在一起的按钮,按钮上有文字,文字少的按钮小,文字多的按钮大,怎么样让按钮一样大小呢?
java swing 有几个排列在一起的按钮,按钮上有文字,文字少的按钮小,文字多的按钮大,怎么样让按钮一样大小呢?
在Java swing中图片的添加
在Java swing 中按下一个按钮,然后换一张图片,图片放在JLabel中,图片是用ImagIO 读入的,麻烦给个例子
java swing 中怎么设置窗体背景图片?
java swing 中怎么设置窗体背景图片而不覆盖其他组件比如按钮文本框这些,我用边框布局,把他们都添加到内容面板层上,但图片把其他组件覆盖了,是怎么回事?求大神们解答,谢谢
请教:Java Swing分割字符串的问题
我用Java Swing写了一个小程序,这是片段:![图片说明](https://img-ask.csdn.net/upload/201603/14/1457953421_953017.jpg) 希望达到的效果是:输入字符串“a b c”,点击按钮以后输出"ad bd cd",也就是中间有空格。但实际上输出的是"adbdcd“,没有空格。 我想向大家请教:要怎样修改,才可以输出有空格的新字符串呢?谢谢大家。
求教java swing的窗口问题
请用Java Swing GUI组件设计用户登录界面,当用户在文本框中输入内容, **然后按下“确定”按钮时,把文本框中的内容放在下面的文本区域中。** ![图片说明](https://img-ask.csdn.net/upload/201812/04/1543923657_653085.png)
java swing jtable
小弟不才,才学swing [code="java"] /* * MySwingView.java */ package myswing; import org.jdesktop.application.Action; import org.jdesktop.application.ResourceMap; import org.jdesktop.application.SingleFrameApplication; import org.jdesktop.application.FrameView; import org.jdesktop.application.TaskMonitor; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.Timer; import javax.swing.Icon; import javax.swing.JDialog; import javax.swing.JFrame; /** * The application's main frame. */ public class MySwingView extends FrameView { public MySwingView(SingleFrameApplication app) { super(app); initComponents(); // status bar initialization - message timeout, idle icon and busy animation, etc ResourceMap resourceMap = getResourceMap(); int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout"); messageTimer = new Timer(messageTimeout, new ActionListener() { public void actionPerformed(ActionEvent e) { statusMessageLabel.setText(""); } }); messageTimer.setRepeats(false); int busyAnimationRate = resourceMap.getInteger("StatusBar.busyAnimationRate"); for (int i = 0; i < busyIcons.length; i++) { busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]"); } busyIconTimer = new Timer(busyAnimationRate, new ActionListener() { public void actionPerformed(ActionEvent e) { busyIconIndex = (busyIconIndex + 1) % busyIcons.length; statusAnimationLabel.setIcon(busyIcons[busyIconIndex]); } }); idleIcon = resourceMap.getIcon("StatusBar.idleIcon"); statusAnimationLabel.setIcon(idleIcon); progressBar.setVisible(false); // connecting action tasks to status bar via TaskMonitor TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext()); taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() { public void propertyChange(java.beans.PropertyChangeEvent evt) { String propertyName = evt.getPropertyName(); if ("started".equals(propertyName)) { if (!busyIconTimer.isRunning()) { statusAnimationLabel.setIcon(busyIcons[0]); busyIconIndex = 0; busyIconTimer.start(); } progressBar.setVisible(true); progressBar.setIndeterminate(true); } else if ("done".equals(propertyName)) { busyIconTimer.stop(); statusAnimationLabel.setIcon(idleIcon); progressBar.setVisible(false); progressBar.setValue(0); } else if ("message".equals(propertyName)) { String text = (String)(evt.getNewValue()); statusMessageLabel.setText((text == null) ? "" : text); messageTimer.restart(); } else if ("progress".equals(propertyName)) { int value = (Integer)(evt.getNewValue()); progressBar.setVisible(true); progressBar.setIndeterminate(false); progressBar.setValue(value); } } }); } @Action public void showAboutBox() { if (aboutBox == null) { JFrame mainFrame = MySwingApp.getApplication().getMainFrame(); aboutBox = new MySwingAboutBox(mainFrame); aboutBox.setLocationRelativeTo(mainFrame); } MySwingApp.getApplication().show(aboutBox); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { mainPanel = new javax.swing.JPanel(); jScrollPane1 = new javax.swing.JScrollPane(); jTable1 = new javax.swing.JTable(); menuBar = new javax.swing.JMenuBar(); javax.swing.JMenu fileMenu = new javax.swing.JMenu(); javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem(); jMenuItem1 = new javax.swing.JMenuItem(); javax.swing.JMenu helpMenu = new javax.swing.JMenu(); javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem(); statusPanel = new javax.swing.JPanel(); javax.swing.JSeparator statusPanelSeparator = new javax.swing.JSeparator(); statusMessageLabel = new javax.swing.JLabel(); statusAnimationLabel = new javax.swing.JLabel(); progressBar = new javax.swing.JProgressBar(); mainPanel.setName("mainPanel"); // NOI18N jScrollPane1.setName("jScrollPane1"); // NOI18N jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { "Title 1", "Title 2", "Title 3", "Title 4" } ) { boolean[] canEdit = new boolean [] { false, false, false, true }; public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); jTable1.setName("jTable1"); // NOI18N jScrollPane1.setViewportView(jTable1); javax.swing.GroupLayout mainPanelLayout = new javax.swing.GroupLayout(mainPanel); mainPanel.setLayout(mainPanelLayout); mainPanelLayout.setHorizontalGroup( mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(mainPanelLayout.createSequentialGroup() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 555, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); mainPanelLayout.setVerticalGroup( mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(mainPanelLayout.createSequentialGroup() .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 314, Short.MAX_VALUE) .addContainerGap()) ); menuBar.setName("menuBar"); // NOI18N org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(myswing.MySwingApp.class).getContext().getResourceMap(MySwingView.class); fileMenu.setText(resourceMap.getString("fileMenu.text")); // NOI18N fileMenu.setName("fileMenu"); // NOI18N javax.swing.ActionMap actionMap = org.jdesktop.application.Application.getInstance(myswing.MySwingApp.class).getContext().getActionMap(MySwingView.class, this); exitMenuItem.setAction(actionMap.get("quit")); // NOI18N exitMenuItem.setName("exitMenuItem"); // NOI18N fileMenu.add(exitMenuItem); jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_Q, java.awt.event.InputEvent.CTRL_MASK)); jMenuItem1.setText("Item"); jMenuItem1.setName("jMenuItem1"); // NOI18N jMenuItem1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { thisClick(evt); } }); fileMenu.add(jMenuItem1); menuBar.add(fileMenu); helpMenu.setText(resourceMap.getString("helpMenu.text")); // NOI18N helpMenu.setName("helpMenu"); // NOI18N aboutMenuItem.setAction(actionMap.get("showAboutBox")); // NOI18N aboutMenuItem.setName("aboutMenuItem"); // NOI18N helpMenu.add(aboutMenuItem); menuBar.add(helpMenu); statusPanel.setName("statusPanel"); // NOI18N statusPanelSeparator.setName("statusPanelSeparator"); // NOI18N statusMessageLabel.setName("statusMessageLabel"); // NOI18N statusAnimationLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); statusAnimationLabel.setName("statusAnimationLabel"); // NOI18N progressBar.setName("progressBar"); // NOI18N javax.swing.GroupLayout statusPanelLayout = new javax.swing.GroupLayout(statusPanel); statusPanel.setLayout(statusPanelLayout); statusPanelLayout.setHorizontalGroup( statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(statusPanelSeparator, javax.swing.GroupLayout.DEFAULT_SIZE, 565, Short.MAX_VALUE) .addGroup(statusPanelLayout.createSequentialGroup() .addContainerGap() .addComponent(statusMessageLabel) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 395, Short.MAX_VALUE) .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(statusAnimationLabel) .addContainerGap()) ); statusPanelLayout.setVerticalGroup( statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(statusPanelLayout.createSequentialGroup() .addComponent(statusPanelSeparator, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) .addGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(statusMessageLabel) .addComponent(statusAnimationLabel) .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) .addGap(3, 3, 3)) ); setComponent(mainPanel); setMenuBar(menuBar); setStatusBar(statusPanel); }// </editor-fold> private void thisClick(java.awt.event.ActionEvent evt) { System.out.println("----------------------------->");//菜单栏事件 } // Variables declaration - do not modify private javax.swing.JMenuItem jMenuItem1; private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTable jTable1; private javax.swing.JPanel mainPanel; private javax.swing.JMenuBar menuBar; private javax.swing.JProgressBar progressBar; private javax.swing.JLabel statusAnimationLabel; private javax.swing.JLabel statusMessageLabel; private javax.swing.JPanel statusPanel; // End of variables declaration private final Timer messageTimer; private final Timer busyIconTimer; private final Icon idleIcon; private final Icon[] busyIcons = new Icon[15]; private int busyIconIndex = 0; private JDialog aboutBox; } [/code] 如果我想在表格最后一列加个按钮,点击随便触发一个事件,应该如何写?表格的数据用动态生成。
java Swing 关于鼠标移动到JButton按钮上背景会跟随着移动的次数慢慢变白的问题?
java Swing 关于鼠标移动到JButton按钮上背景会跟随着移动的次数慢慢变白的问题? ![图片说明](https://img-ask.csdn.net/upload/201710/19/1508404877_9374.jpg) ![图片说明](https://img-ask.csdn.net/upload/201710/19/1508404887_392629.jpg) ![图片说明](https://img-ask.csdn.net/upload/201710/19/1508404896_362473.jpg)
Java swing界面生成jar后图片不显示
我用Java的swing界面做了一个项目,其中需要导入图片,但是当我生成jar后,点击运行可以运行,但是一些按钮上的图片不能显示,我该怎么办
Java swing 表格每行后嵌入删除按钮,点击按钮删除该行,但点击按钮所有行删剩最后一行时报错,如何解决?
![图片说明](https://img-ask.csdn.net/upload/201908/03/1564815909_864409.jpg) ``` package mytest; import java.awt.Component; import java.awt.Component; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; import javax.swing.table.*; import org.jfree.xml.generator.ModelBuilder; public class T extends JFrame{ private static final long serialVersionUID = 1L; static JTable table = null; static DefaultTableModel model=null; static JScrollPane js=null ; public T(){ model = new DefaultTableModel( new String[] { "课程名","教师","学分","学时","课程类别","课程性质","上课地点","上课时间","余量","" },2 ); table = new JTable(model); table.getColumnModel().getColumn(9).setCellEditor(new MyRender());//设置编辑器 table.getColumnModel().getColumn(9).setCellRenderer(new MyRender() ); js = new JScrollPane(table); this.add(js); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); this.setSize(399, 300); this.setLocationRelativeTo(null); } public static void main(String[] args) { // TODO Auto-generated method stub new T(); } } //渲染 器 编辑器 class MyRender extends AbstractCellEditor implements TableCellRenderer,ActionListener, TableCellEditor{ private static final long serialVersionUID = 1L; private JButton button =null; public MyRender(){ button = new JButton("删除"); button.addActionListener(this); } @Override public Object getCellEditorValue() { // TODO Auto-generated method stub return null; } @Override public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { // TODO Auto-generated method stub return button; } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub int row = T.table.getSelectedRow(); if(row != -1){ T.model.removeRow(row); } } @Override public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) { // TODO Auto-generated method stub return button; } ```
为什么说java Swing写的程序难看?
给按钮设置上图片,直接覆盖掉按钮的原本样式,不久好看了吗? 样式都是可以覆写的,为什么大家说Swing的界面难看?
swing按钮的点击事件,怎么样才可以一直被点击
这个按钮点击以后就一直是那种被点击状态,就再也点不成了,是怎么回事儿啊。在线等,挺急的
java swing对话框关闭后,焦点定位
背景:我用java swing开发了一个pos收银台系统,大部分的数据输入是在JTable中,当按快捷键F3时需弹出一个银行卡收银的对话框。 问题: 当在对话框中确定交易金额后,按确定按钮,对话框要关闭,并且判断是否交易完毕,如果是,则重新将焦点定位在指定位置。 说明: 我的做法是:在对话框关闭后,进行处理焦点,代码如下: this.addWindowListener(new WindowAdapter() { @Override public void windowClosed(WindowEvent e) { if(isPayConfrim){ //交易完毕 isPayConfrim=false; if(ViewCommonValue.cashAmounts>ViewCommonValue.cashRecipt){ JOptionPane.showMessageDialog(null,"结算金额结算金额大于现金收款金额"); PayAssignPanel.isLeaveTb = true; PayAssignPanel.payTable.getCellEditor().stopCellEditing(); PayPanel.cashReceiptText.requestFocus();//焦点定位 PayPanel.cashReceiptText.selectAll(); }else{ ViewCommonValue.paymentConfirm(); return; } } else{//否则,焦点仍定位在原来表格中的位置 JTable tb = PayAssignPanel.payTable; tb.requestFocus(); tb.editCellAt(2, 2); tb.changeSelection(2, 2, false, false); } } 但是结果没有达到我要的效果,请问哪位热心人指教指教!!!谢谢 如果可以教教swing中自由如何控制焦点,就更好了~~~
java swing mp3音频播放问题
想要实现本地文件中的录音文件(文件为MP3格式)播放,下面是我自己定义的播放监听的部分代码,求大神补全下面的play方法和pause方法 package MusicFramework; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JFileChooser; public class AudioPlay implements ActionListener { JFileChooser fc = new JFileChooser(); @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getActionCommand().equals("openfileBtn")) { //点击打开播放文件按钮后的动作 //播放音频文件按钮可以启动 QueryByHumming.openfileBtn.setEnabled(false); QueryByHumming.playBtn.setEnabled(true); QueryByHumming.pauseBtn.setEnabled(false); //调用文件选择方法 openfile(); }else if(e.getActionCommand().equals("playBtn")){ //点击播放音频文件按钮的动作 QueryByHumming.openfileBtn.setEnabled(true); QueryByHumming.playBtn.setEnabled(false); QueryByHumming.pauseBtn.setEnabled(true); //调用播放音频的方法 play(); }else if(e.getActionCommand().equals("pauseBtn")){ //调用停止播放音频的方法 pause(); } } //选择音频文件 public void openfile(){ fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES); int intRetVal = fc.showOpenDialog(QueryByHumming.pl3); if( intRetVal == JFileChooser.APPROVE_OPTION){ QueryByHumming.text3.setText(fc.getSelectedFile().getPath()); } } //播放音频文件 public void play(){ } //暂停播放 public void pause(){ } }
java swing 组件显示相关的问题
小白求教,下面这段代码编译运行之后,为什么需要在调整一次窗口大小之后,窗口中的按钮组件才会显示出来? ``` java /////////////////////////////////////////////////////////// // 文件名: // JavaApplication2.java /////////////////////////////////////////////////////////// // 简介: // 简单的Java程序,通过点击按钮显示或隐藏窗口 /////////////////////////////////////////////////////////// import javax.swing.*; import java.awt.*; import java.awt.event.*; public class JavaApplication2 { static JFrame window1 = new JFrame("第一个窗口"); static JFrame window2 = new JFrame("第二个窗口"); public static void main(String [] args) { Container window1_con = window1.getContentPane(); window1.setBounds(60,100,300,150); window1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window1.setVisible(true); Container window2_con = window2.getContentPane(); window2.setBounds(260,100,300,150); window2.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); window2.setVisible(false); JButton btn1 = new JButton("打开第二个窗口"); window1_con.add(btn1); // window1.pack(); JButton btn2 = new JButton("关闭此窗口"); window2_con.add(btn2); // window2.pack(); ActionListener listener1; listener1 = new ReaderListen1(); btn1.addActionListener(listener1); ActionListener listener2; listener2 = new ReaderListen2(); btn2.addActionListener(listener2); } } class ReaderListen1 extends JavaApplication2 implements ActionListener { public void actionPerformed(ActionEvent e) { window2.setVisible(true); } } class ReaderListen2 extends JavaApplication2 implements ActionListener { public void actionPerformed(ActionEvent e) { window2.setVisible(false); } } ```
java Swing自定义按钮,最大化到最小化,回来图标就不见了?
java Swing自定义按钮,最大化到最小化,回来图标就不见了? 程序运行,单独点击最大化,最小化没有任何问题,但是如果先点了最大化,再点最小化 再从任务栏点回来,图标就不见了。 //最小化功能 public void minFunction(JLabel min){ min.addMouseListener(new MouseAdapter() { @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub min.setIcon(new ImageIcon(hover_min)); } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub min.setIcon(new ImageIcon(default_min)); } @Override public void mouseClicked(MouseEvent e) { realizeMin(); } }); } //最大化功能 public void maxFunction(JLabel max){ max.addMouseListener(new MouseAdapter() { @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub max.setIcon(new ImageIcon(hover_max)); } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub max.setIcon(new ImageIcon(default_max)); } @Override public void mouseClicked(MouseEvent e) { realizeMax(); maxFace(); if(getjFrameState() == 1){ realizeMax(); maxFace(); }else if(getjFrameState() == 2){ realizeNormal();//点击按钮实现最大化 normalFace(); } } }); } //获取窗口状态 int jFrameState; public int getjFrameState(){ jFrame.addWindowStateListener(new WindowStateListener() { @Override public void windowStateChanged(WindowEvent state) { // TODO Auto-generated method stub if(state.getNewState() == JFrame.NORMAL) { jFrameState = 1;//新窗口正常化 }else if(state.getNewState() == JFrame.MAXIMIZED_BOTH) { jFrameState = 2;//新窗口最大化 }else if(state.getNewState() == JFrame.ICONIFIED) { jFrameState = 3;//新窗口最小化 }else if(state.getOldState() == JFrame.MAXIMIZED_BOTH) { jFrameState = 4;//旧窗口最大化 }else if(state.getOldState() == JFrame.ICONIFIED) { jFrameState = 5;//旧窗口最小化 }else if(state.getOldState() == JFrame.NORMAL){ jFrameState = 6;//旧窗口正常化 } } }); return jFrameState; }
在java swing 中实现动态创建按钮并绑定点击事件,为何不能实现?
//内部类,实现创建button,兵绑定点击事件 class RentBtn extends JButton{ public JButton getRentBtn(int x,int y,int weigth,int heigth,int shopId,Merchant merchant){ int btn_x = x; int btn_y = y; int btn_weigth = weigth; int btn_heigth= heigth; int id = shopId; Merchant user = merchant; JButton jButton = new JButton("租用"); jButton.setBounds(btn_x, btn_y, btn_weigth, btn_heigth); jButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { Session session = null; Transaction transaction = null; try { session = HibernateUtil.getSession(); transaction = session.beginTransaction(); transaction.begin(); String hql = "select s from Shop s where s.id=:id"; Shop shop = (Shop) session.createQuery(hql).setParameter("id", shopId); shop.setMerchant(user); transaction.commit(); session.save(shop); ShopRent shopRent = new ShopRent(user); JOptionPane jOptionPane = new JOptionPane("租用成功"); } catch (Exception e) { HibernateUtil.closeSession(); transaction.rollback(); } } }); return jButton; } ```//在for循环中创建多个按钮 for(int i=0;i<shops.size();i++) { name = shops.get(i).getId(); map.put(i, name); propertyfee = shops.get(i).getPropertyfee(); utilities = shops.get(i).getUtilities(); rent = shops.get(i).getRent(); shopname = new JTextField(); shopname.setText(String.valueOf(name)); shopname.setBounds(10, 84+i*30, 47, 21); add(shopname); shopname.setColumns(10); propertyfeeFiled = new JTextField(); propertyfeeFiled.setText(String.valueOf(propertyfee)); propertyfeeFiled.setColumns(10); propertyfeeFiled.setBounds(91, 84+i*30, 47, 21); add(propertyfeeFiled); utilitiesFiled = new JTextField(); utilitiesFiled.setText(String.valueOf(utilities)); utilitiesFiled.setColumns(10); utilitiesFiled.setBounds(177, 84+i*30, 47, 21); add(utilitiesFiled); rentFiled = new JTextField(); rentFiled.setText(String.valueOf(rent)); rentFiled.setColumns(10); rentFiled.setBounds(267, 84+i*30, 47, 21); add(rentFiled); RentBtn rentBtn = new RentBtn(); JButton jButton = rentBtn.getRentBtn(356, 84+i*30, 72, 23, name,mer ); add(jButton); } ``` ``` 实际运行效果是:按钮成功创建,但是点击按钮没有响应。想请问下有什么其他办法? ```
相见恨晚的超实用网站
搞学习 知乎:www.zhihu.com 简答题:http://www.jiandati.com/ 网易公开课:https://open.163.com/ted/ 网易云课堂:https://study.163.com/ 中国大学MOOC:www.icourse163.org 网易云课堂:study.163.com 哔哩哔哩弹幕网:www.bilibili.com 我要自学网:www.51zxw
花了20分钟,给女朋友们写了一个web版群聊程序
参考博客 [1]https://www.byteslounge.com/tutorials/java-ee-html5-websocket-example
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
字节跳动视频编解码面经
引言 本文主要是记录一下面试字节跳动的经历。 三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
Python 基础(一):入门必备知识
目录1 标识符2 关键字3 引号4 编码5 输入输出6 缩进7 多行8 注释9 数据类型10 运算符10.1 常用运算符10.2 运算符优先级 1 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供
这30个CSS选择器,你必须熟记(上)
关注前端达人,与你共同进步CSS的魅力就是让我们前端工程师像设计师一样进行网页的设计,我们能轻而易举的改变颜色、布局、制作出漂亮的影音效果等等,我们只需要改几行代码,不需...
国产开源API网关项目进入Apache孵化器:APISIX
点击蓝色“程序猿DD”关注我回复“资源”获取独家整理的学习资料!近日,又有一个开源项目加入了这个Java开源界大名鼎鼎的Apache基金会,开始进行孵化器。项目名称:AP...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
编写Spring MVC控制器的14个技巧
本期目录 1.使用@Controller构造型 2.实现控制器接口 3.扩展AbstractController类 4.为处理程序方法指定URL映射 5.为处理程序方法指定HTTP请求方法 6.将请求参数映射到处理程序方法 7.返回模型和视图 8.将对象放入模型 9.处理程序方法中的重定向 10.处理表格提交和表格验证 11.处理文件上传 12.在控制器中自动装配业务类 ...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
求小姐姐抠图竟遭白眼?痛定思痛,我决定用 Python 自力更生!
点击蓝色“Python空间”关注我丫加个“星标”,每天一起快乐的学习大家好,我是 Rocky0429,一个刚恰完午饭,正在用刷网页浪费生命的蒟蒻...一堆堆无聊八卦信息的网页内容慢慢使我的双眼模糊,一个哈欠打出了三斤老泪,就在此时我看到了一张图片:是谁!是谁把我女朋友的照片放出来的!awsl!太好看了叭...等等,那个背景上的一堆鬼画符是什么鬼?!真是看不下去!叔叔婶婶能忍,隔壁老王的三姨妈的四表...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
相关热词 c# 输入ip c# 乱码 报表 c#选择结构应用基本算法 c# 收到udp包后回包 c#oracle 头文件 c# 序列化对象 自定义 c# tcp 心跳 c# ice连接服务端 c# md5 解密 c# 文字导航控件
立即提问

相似问题

7
JavaScript 函数语法报错
3
Swing问题 点击按钮后不出现内容
5
eclipse连接数据库问题:捕捉到异常“数据源错误”,帮帮孩子吧...代码如下
0
java swing 怎么去掉“打开文件”这个功能,我去掉了,图片就显示不出来了
2
java简易计算器实现,添加能够切换简易计算器和科学计算器的按键。
1
求教java swing的窗口问题
3
Java如何通过匿名内部类给外部变量赋值
0
java为什么使用等待语句后弹出的窗口组件都不显示了?
3
刚学完Java,做了一个简易计算器,但是不明白String =""; 是什么意思,希望大佬能帮帮我
2
运行出来报了代码后面那段错误。解决不来。各位大哥棒棒忙。本人小白一枚。
1
用java写的一个日历程序,因为答辩急着用,有没有大佬帮忙注释一下每个模块的作用!!!
1
用java写的一个日历程序,新手看不懂,有没有大佬帮忙注释一下每个模块的意思和作用!!!
1
Java Swing在做事件处理过程中如何在处理函数执行开始时和结束时执行一些命令
0
使用swing实现学生选课信息界面
0
JAVA图片浏览器的音乐播放,在切换下一首歌的时候,当前的歌还在播放,怎么解决?
1
Java代码中密码输入框为什么这么大,图二如何改才能和图一一样?
1
请问如何点击按钮就可以弹出图片?
2
代码最后用lambda表达式写的方法出现了问题,帮忙搞定一下吧(自己写的计算器的代码)
0
JAVASwing通过按钮切换面板失败。
1
java使用swing开发的聊天面板如何嵌入到网页中