(Java / MySQl)生成daynamic按钮

时间:2016-05-16 17:31:53

标签: java mysql swing

我只是尝试通过MySql生成Buttons。 我有一个MySql DB,我存储Button相关数据(名称等) 现在我尝试为每个条目生成一个自己的Button。 Debug会在控制台中打印,但按钮不会显示。任何想法或提示。想得到一个建议。我有一个类摆动,一个处理所有mysql请求。

// app/Model/Postcode.php
App::uses('AppModel', 'Model');

class PostCode extends AppModel {

    public $validate = array(
        // Validation
    );

   // Replace 'ModelName' with the name of the class where the code sites you mentioned above
    public $hasMany = array(
        'ModelName' => array(
            'className' => 'ModelName',
            'foreignKey' => 'postcode_id'
        )
    );
}

我调用addButton()的MySql部分; 这部分是另一个名为mysqlaccess.java的类

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


public class swing {
    static JFrame frame = new JFrame("MainMenu");
    static  JPanel panel = new JPanel();
    public static void main(String[] args) {

        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300,300);
        frame.add(panel);
        JButton button = new JButton("Dursuchen");
        panel.add(button);
        button.addActionListener(new search());

    }



    public  static  void addButton(String name){
        JPanel rowPanel = new JPanel();
        System.out.println("addButton " + name);
        JButton button = new JButton(name);
        rowPanel.add(button);
        //button.addActionListener(new search());
    }

    static  class Action implements  ActionListener{
        public  void actionPerformed(ActionEvent e){
            JFrame frame2 = new JFrame("Clicked");
            frame2.setVisible(true);
            frame2.setSize(200,200);
            JLabel label = new JLabel();
            JPanel panel = new JPanel();
            frame2.add(panel);
            panel.add(label);
        }
    }
    static  class search implements  ActionListener{
        public  void actionPerformed(ActionEvent e){
            Search.getAllFromKat(0);

        }
    }

}

1 个答案:

答案 0 :(得分:2)

对您的代码进行以下更改,它将显示您的按钮。

public static void addButton(String name)
{
    System.out.println("addButton " + name);

    JButton button = new JButton(name);

    panel.add(button);
    panel.revalidate();
}