[edit]jaja, die bequemlichkeit, einmal ind die faq schauen und man is schlauer
nix für ungut [/edit]
grüß euch, ich arbeite im moment an meiner projektarbeit: ein statistikprogramm für hattrick(.org)
okay ist nicht gerade das originellste, aber egal
mein problem:
ich möchte in einer JList jedes einzelne training(immer fr.) anzeigen, und durch selektion einer dieser zeilen möchte ich die details anzeigen.
ich verwende eine klasse die JPanel erbt und mach ihr ein einfaches gridlayout(1,2).
links die liste der training und rechts die jeweiligen details.
ansich macht er das ganz brav, nur das einzige problem ist, dass der listener die methode valuechanged anscheinend zweimal aufruft wenn ich eine zeile selektiere. das ganze führt dann dazu, dass ich in den details(was auch eine jlist mit einfachen strings ala: hubert mustermann...spielaufbau +1 ist) das ganze doppelt habe.
ich hab die klasse etwas vereinfacht um einen fehler in anderen klassen auszuschließen, jetzt gibt die methode valuechanged nur noch ein sysout mit einem zähler aus. trotzdem wird dieser zweimal angezeigt....
hier der code:
und die main:
wäre erfreut wenn mir jemand helfen kann, oder eventuell steh ich am schlauch und das gehört so!?
danke jedenfalls,
mfg, chl
nix für ungut [/edit]
grüß euch, ich arbeite im moment an meiner projektarbeit: ein statistikprogramm für hattrick(.org)
okay ist nicht gerade das originellste, aber egal
mein problem:
ich möchte in einer JList jedes einzelne training(immer fr.) anzeigen, und durch selektion einer dieser zeilen möchte ich die details anzeigen.
ich verwende eine klasse die JPanel erbt und mach ihr ein einfaches gridlayout(1,2).
links die liste der training und rechts die jeweiligen details.
ansich macht er das ganz brav, nur das einzige problem ist, dass der listener die methode valuechanged anscheinend zweimal aufruft wenn ich eine zeile selektiere. das ganze führt dann dazu, dass ich in den details(was auch eine jlist mit einfachen strings ala: hubert mustermann...spielaufbau +1 ist) das ganze doppelt habe.
ich hab die klasse etwas vereinfacht um einen fehler in anderen klassen auszuschließen, jetzt gibt die methode valuechanged nur noch ein sysout mit einem zähler aus. trotzdem wird dieser zweimal angezeigt....
hier der code:
Code:
package at.chl.hattrickMeister;
import java.awt.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import at.chl.hattrickMeister.training.TrainingController;
import at.chl.hattrickMeister.training.TrainingPlayer;
import at.chl.hattrickMeister.training.TrainingWeek;
public class TrainingPanelTest extends JPanel
{
private JScrollPane scrTraining;
private JPanel pnlDetails;
private JList lstTraining;
private int i=0;
public TrainingPanelTest() //ArrayList<TrainingWeek> trainingList)
{
setLayout(new GridLayout(1,2));
pnlDetails=new JPanel();//TrainingDetailPanel(1);
lstTraining=new JList(new String[]{"zeile1","zeile2","zeile3"});
lstTraining.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
lstTraining.addListSelectionListener(new ListSelectionListener(){
public void valueChanged(ListSelectionEvent event)
{
showDetails(lstTraining.getSelectedIndex());
}
});
scrTraining=new JScrollPane(lstTraining);
add(scrTraining);
add(pnlDetails);
}
protected void showDetails(int selectedIndex)
{
//this.remove(pnlDetails);
//pnlDetails=new TrainingDetailPanel(lstTraining.getSelectedIndex());
System.out.println("valueChanged at TrainingList"+i++);
//this.add(pnlDetails);
}
und die main:
Code:
public class testMain
{
public static void main(String[] args)
{
JFrame fr=new JFrame();
fr.add(new TrainingPanelTest());
fr.setVisible(true);
}
}
wäre erfreut wenn mir jemand helfen kann, oder eventuell steh ich am schlauch und das gehört so!?
danke jedenfalls,
mfg, chl