- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
class Scribble extends Component implements ActionListener {
protected Frame f;
protected int w,h;
public Scribble(Frame f, int w, int h){
this.f = f;
this.w = w;
this.h = h;
}
@Override
public Dimension getPreferredSize(){
return new Dimension(w,h);
}
public void actionPerformed(ActionEvent event){
String s = event.getActionCommand();
if(s.equals("Красный"))
Miner.currColor = Color.red;
else if(s.equals("Зелёный"))
Miner.currColor = Color.green;
else if(s.equals("Синий"))
Miner.currColor = Color.blue;
else if(s.equals("Серый"))
Miner.currColor = Color.gray;
}
}
Lure Of Chaos 16.01.2011 22:33 # −2
Подход вполне стандартный. Но почему бы или на каждый пункт не навесить свой обработчик, или не сохранять ссылки на MenuItem-сы в полях, а потом не сверяться с event.getSource()?
dwinner 16.01.2011 22:44 # 0
В первые 1.5 года программирования на Java вообще очень много говна было. В MenuItem'ах потом
HashTable привязал, но и это было не лучшим решением.
Lure Of Chaos 16.01.2011 22:58 # −3
о, и каковы впечатления? стоит ли им интересоваться?
> но и это было не лучшим решением.
а хорошего решения может и не быть, тут, по-моему разрабы прошляпили. На мой взгляд, нужно было бы привязывать какой-нибудь идентификатор. Как я понимаю, они задумывали, что бы все описывали Action, но вот никто же так не делает.
dwinner 16.01.2011 23:29 # 0