Ich versuche einfach Buttons über MySql zu generieren. Ich habe eine MySql DB, wo ich die Taste relevanten Daten (Name etc) Jetzt habe ich versucht, für jeden Eintrag einen eigenen Button zu generieren. Der Debugger druckt zwar in der Konsole, aber die Schaltflächen werden nicht angezeigt. Irgendwelche Ideen oder Tipps. Möchte einen Rat bekommen. Ich habe einen Klassenschwung und einen, wo ich alle mysql Anfragen behandle.(Java/MySQl) Generiere daynamic Buttons
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);
}
}
}
MySql Teil, wo ich das addButton() aufrufen; Dieser Teil ist in einer anderen Klasse aufgerufen mysqlaccess.java
public static void showAllFromKat(int ID){
con = getInstance();
if(con != null){
Statement query;
try{
query = con.createStatement();
String sql =
"SELECT * FROM learn_themen_db";
ResultSet result = query.executeQuery(sql);
while(result.next()){
int KatID = result.getInt("Kat_ID");
String DisplayName = result.getString("Display_Name");
if(KatID == ID){
System.out.println(DisplayName);
swing.addButton(DisplayName);
}
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
'Repaint()' nach dem Hinzufügen der Tasten? –
Wo wird RowPanel zum JFrame hinzugefügt? – josemr
rowPanel wird nicht hinzugefügt Ich habe es entfernt. Es war nur ein Test. Wie funktioniert das Repaint()? – StonedLover