Avatar billede lukej Nybegynder
09. april 2003 - 18:15 Der er 3 kommentarer og
1 løsning

Mangel på design til program

Hej

Jeg er igang med en opgave hvor jeg skal fremstille et program der er i stand til at registrere hvilke numre man har på hvilke CD'er. Mit problem ligger i at jeg skal have oprettet en søgefunktion. Jeg skal i første omgang have lavet fire checkboxe hvor man kan krydse af om man vil søge på kunstner, tittel, album eller længden af nummeret. Der udover skal der naturligvis også være en edit hvori man kan skrive en søge ord. Alt dette skal blive aktiveret via en knap. Jeg har selv forestillet mig en if kommando

f.eks.

if not CheckBoxKunstner.Checked=False then begin
.........
end;
if CheckBoxTittel.Checked=False then begin
ved ikke helt om det er holdbart...

Desuden mangler jeg et design hertil nogenforslag???
Avatar billede dkn Nybegynder
09. april 2003 - 18:29 #1
tror da at det ville være mere passende at bruge radiogroup.
Med mindre de skal kunne søge på flere af tingende på een gang?

Design hmm kunne jo bare køre med xp look (flat style)
Eller du kunne designe dine egen knapper er lign.
Avatar billede lukej Nybegynder
09. april 2003 - 18:48 #2
Meningen af at bugeren skal have mulighed for at søge på flere emner ad gangen.
Avatar billede tolderlund Nybegynder
09. april 2003 - 19:46 #3
Det er simplere blot at skrive
  if CheckBoxKunstner.Checked then
Det er det samme som
  if not CheckBoxKunstner.Checked=False then
Men ang. dit design:
Det kunne være simplere og mere intuitivt (stedet for CheckBoxes) at bruge 4 TEdit hvor man indtaste henh. Kunstner, Titel, Album og/eller Længde af nummer.
Så kan du skrive:
  if KunstnerEdit.Text <> '' then
    {søg efter kunstner}
og så en TButton der aktiverer søgningen.
En TEdit hvor der ikke er indtastet betyder at man ikke vil søge på den kategori.
Mere simpelt og forståeligt for brugeren synes jeg.
Avatar billede jensfudge Nybegynder
10. april 2003 - 08:41 #4
Jeg er enig med tolderlund, drop checkboxes, og drop radiobuttons.
Dog ville jeg udvide det med editboxene lidt.

Du kan på en editbox'es OnChange Event have en stump kode der søger ned gennem din database efterhånden som man taster...
Eller hvis du vil have det til at virke lidt ala Internet explorer når du skriver adresserne ind, filtreres alt det væk der ikke opfylder kriteriet...
Så skriver du noget i stil af: (Du kan sætte alle fire editboxes OnChange Event til at pege på samme procedure.

EditKunstnerOnChange(Sender:TObject);
begin
  SetTableFilter;
end;

procedure TForm1.SetTableFilter;
begin
  table1.DisableControls;
  try
    table1.Filter := format('KUNSTNER = ''%s'' AND ALBUM = ''%s''',[EditKunster.text, EditAlbum.text]);
    table1.Filtered := true;
  finally
    table1.EnableControls;
  end;
end;

Hvis du har alle rækkerne vis i et grid, vil de efterhånden forsvinde ud af griddet som man taster.
Der kan godt blive lidt med at du skal nulstille filteret på det rette tidspunkt...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester