Thread View: pl.comp.lang.java
1 messages
1 total messages
Started by Andrzej
Thu, 27 Oct 2011 18:17
Jak z okna dostać się do przycisku, który je wywołał ??
Author: Andrzej
Date: Thu, 27 Oct 2011 18:17
Date: Thu, 27 Oct 2011 18:17
61 lines
3311 bytes
3311 bytes
Witam.
Proszę o pomoc w następującej sprawie. W części głównej programu mam
metodę, która czyta plik i tworzy listę przycisków dziedziczących po
JButton z dodanymi przeze mnie dodatkowymi zmiennymi. Wiersz przeczytany
z pliku jest etykietą przycisku. Dla każdego przycisku jest metoda
obsługi zdarzenia, która powoduje utworzenie i wyświetlenie okna. Moje
pytanie: jak z poziomu okna dostać się do zmiennych przycisku, który je
wywołał ??
Poniżej kod metody:
private void MakeButtonsFriends(String sfriends){
int x,y;
int i = 0;
String fname;
FriendsList = new ArrayList<CoNiOPrvButton>();
StringTokenizer st = new StringTokenizer(sfriends, "|");
int width = jPanelButton1.getWidth();
x = jPanelButton1.getX();
y = jPanelButton1.getY();
while(st.hasMoreTokens()){
fname = st.nextToken();
FriendsList.add(new CoNiOPrvButton(fname));
FriendsList.get(i).setBounds(x, y + i * 30, width, 30);
FriendsList.get(i).Name = fname;
FriendsList.get(i).addActionListener(new
java.awt.event.ActionListener() {
@Override
public void actionPerformed(java.awt.event.ActionEvent evt) {
int j = -1;
for(int k = 0; k < FriendsList.size(); k++){
if(FriendsList.get(k).Name.equals(evt.getActionCommand())){
j = k;
}
}
if(!FriendsList.get(j).Private.isDispleyed){
FriendsList.get(j).Private = new
CoNiOPrivate("Rozmowa prywatna z: [" + evt.getActionCommand() + "]");
FriendsList.get(j).Private.setVisible(true);
FriendsList.get(j).isDisplayed = true;
FriendsList.get(j).Private.isDispleyed = true;
} else {
CoNiOInfo info = new
CoNiOInfo(FriendsList.get(j).Private, true, "Okno rozmowy z " +
evt.getActionCommand()
+ " jest już otwarte.");
info.setVisible(true);
}
}
});
jPanelButton1.add(FriendsList.get(i));
i++;
}
}
Będę wdzięczny za każdą pomoc.
Pozdrawiam Andrzej
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads