22. maj 2006 - 11:03Der er
9 kommentarer og 1 løsning
Hvad skal gøres her?
Jeg har følgende metode, der skal tilføje et arrangement til et hashtable. MEN, i månedsfeltet skal der kun accepteres input i form af månedernes navne (strenge), dvs. "januar" - "december" (nedenstående array indeholder dog kun "januar"-"marts" pt.).
Spørgsmålet er nu, hvordan jeg i min if-betingelse tjekker om monthField indeholder en gyldig streng fra arrayet?
String eventname = eventnameField.getText(); String title = titleField.getText(); String artist = artistField.getText(); String genre = genreField.getText(); String month = monthField.getText(); String date = dateField.getText(); String time = timeField.getText(); String location = locationField.getText(); String price = priceField.getText();
EventComponents evcomp = new EventComponents(eventname, title, artist, genre, month, date, time, location, price);
if (eventname.length()==0 || title.length()==0 || artist.length()==0 || genre.length()==0 || month.length()==0 || date.length()==0 || time.length()==0 || location.length()==0 || price.length()==0 || monthField.getText()!=months()) { //date.length() >= 7 || //infoLabel.setText("Tjek om alle felter er udfyldt og at datoen er i DD-MM-ÅÅ format!"); infoLabel.setText("Tjek om alle felter er udfyldt!"); Toolkit.getDefaultToolkit().beep(); } else {
Jeg ville jo nok lave "monthField" om til JCombobox med de 12 måneder, så slipper du for at checke noget som helst, i et tekstfelt kan man jo skrive både december og desember, jeg ville tro at alt andet ville forvirre brugeren, eks. skal måneden skrives som DEC, dec, december eller DECEMBER
OK. Har du et hurtigt eksempel på hvordan en JComboBox indlæser alle gyldige måneder fra et array? Så kunne jeg f.eks. selv udvide det, således at når brugeren vil søge på arrangementer i en given måned, kan denne vælge måneden fra JComboBox'en...
OK, tak for eksemplet! Jeg har lige to spørgsmål: 1) Hvis jeg vælger at bruge din første algoritme, hvor man bare gennemløber månederne, hvordan sætter man den så til at acceptere equalsIgnoreCase - bare ved at erstatte if(field.equals(months[i]) med if(field.equals(months[i])? Og 2) Jeg er i gang med at tilpasse mit program efter JComboBox - det bliver et rent forsøg, ellers må jeg anvende den anden teknik. Hvordan henter jeg teksten ud fra JComboBox contra når jeg hentede fra et JTextField: String month = monthField.getText(); ? strengen skal jo parses videre, for at kunne gemme i mit hashtable etc.
Suverænt - det virker også med min opdateringsfunktion nu.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.