Cześć, chciałbym poprawić swój kod i zmienić if-y w metodzie:
public void widgetSelected(SelectionEvent e) {
try {
technicalread = new TechnicalNoteRead(this);
} catch (IOException ex) {
ex.printStackTrace();
}
// Device choose start
if (TechnicalNote.rbDevice.getSelection() && TechnicalNote.rbNecessary.getSelection() && TechnicalNote.rbMechanical.getSelection() && TechnicalNote.rbPolish.getSelection())
{
TechnicalNote.cbElement.setItems(technicalread.getMyDeviceNecessaryPL());
TechnicalNote.cbDescription.setItems(technicalread.getMyDeviceMechanicalPL());
}
else if (TechnicalNote.rbDevice.getSelection() && TechnicalNote.rbRecommended.getSelection() && TechnicalNote.rbMechanical.getSelection() && TechnicalNote.rbPolish.getSelection())
{
TechnicalNote.cbElement.setItems(technicalread.getMyDeviceRecommendedPL());
TechnicalNote.cbDescription.setItems(technicalread.getMyDeviceMechanicalPL());
}
else if (TechnicalNote.rbDevice.getSelection() && TechnicalNote.rbAccessories.getSelection() && TechnicalNote.rbMechanical.getSelection() && TechnicalNote.rbPolish.getSelection())
{
TechnicalNote.cbElement.setItems(technicalread.getMyDeviceAccessoriesPL());
TechnicalNote.cbDescription.setItems(technicalread.getMyDeviceMechanicalPL());
}
else if (TechnicalNote.rbDevice.getSelection() && TechnicalNote.rbNecessary.getSelection() && TechnicalNote.rbMechanical.getSelection() && TechnicalNote.rbEnglish.getSelection())
{
TechnicalNote.cbElement.setItems(technicalread.getMyDeviceNecessaryEN());
TechnicalNote.cbDescription.setItems(technicalread.getMyDeviceMechanicalEN());
}
}
ogólnie każdy if zależny jest od stanu czterech Radio Buttonów, czyli musiałbym napisać 4 klasy i każda zwracała by stan,tak?
potem co dalej? mogee prosić o podpowiedzi jak by to zrobiliście? może przykład na podstawie tego kodu?
przeczytałem już troche przykładów w sieci, ale dalej jest to dla mnie nie do końca zrozumiałe ;/