Avatar billede fun22 Nybegynder
04. juli 2002 - 16:50 Der er 11 kommentarer og
1 løsning

Opdatering af en DBLookupListBox

Jeg har en DBLookupListBox som jeg gerne vil kunne opdatere ved et tryk på en knap. Den henter næmlig ting ud af en database hvor man kan tilføje ting til fra programmet. Sådan som det ligger nu skal man genstarte programmet for at se hvad man har tilføjet, og det er jo lidt trels.
Avatar billede martinlind Nybegynder
04. juli 2002 - 17:01 #1
Det dataset du bruger til at fylde listboxen med kan du prøve at lave en refresh på

Table1.Refresh;

Hvis det ikke virker er du nødt til at lave en Close; og Open; det er for de der er nogle databaser der ikke supporter Refresh ( som regl SQL db'er )

/Martin
Avatar billede martinlind Nybegynder
04. juli 2002 - 17:02 #2
PS : Vi har rigtig gang i prg udviklingen var *GG*
Avatar billede fun22 Nybegynder
04. juli 2002 - 17:08 #3
Det kan man vist godt sige. :) Det virker ikke.. der sker ikke noget når jeg trykker på knappen. Det er en access database jeg bruger, hvis det kan hjælpe.
Avatar billede martinlind Nybegynder
04. juli 2002 - 17:15 #4
Jeg er ikke helt med på hvad du skal ha' opdateret, men jeg kan sige at du skal prøve at lave en

<MyLookupDataSet>.Close;
<MyLookupDataSet>.Open;

på det du vil have opdateret, du skal selvfølgelig også huske at få "gemt" det du forventer at se, dvs. du skal huske at lave en Post på det dataset du har opdateret

<MyInputDataSet>.Post;

/Martin
Avatar billede fun22 Nybegynder
04. juli 2002 - 17:35 #5
Jeg har en ADOTable, DBLookupBox og et Datasource komponent. Så har jeg så også en knap, der hedder opdater. Når jeg trykker på opdater-knappen så vil jeg gerne have sådan at denopdatere forbindelsen til databasen, for at se om der er kommet en ny post.

Nu har jeg prøve at forklare det så godt jeg kan.. Håber det hjalp :|
Avatar billede martinlind Nybegynder
04. juli 2002 - 17:50 #6
Jamen hvis det er en liste ( oversigt ) over nogle poster du vil ha' skal du ikke bruge en lookuplistbox, så skal du bruge en DBGrid.

Men du burde kunne skrive

ADOTable1.Close;
ADOTable1.Open;

ellers så smid lige en kopi af noget kode

/Martin
Avatar billede fun22 Nybegynder
04. juli 2002 - 17:54 #7
Der er som ikke rigtigt noget kode.. Her er opdater knappen:

procedure TForm1.Image9Click(Sender: TObject);
begin
ADOTable1.Refresh;
end;

og så har jeg en DBLookupBox hvis navn er sat til DBLookupBox1

Mere er der ikke.
Avatar billede martinlind Nybegynder
04. juli 2002 - 17:59 #8
så prøv sådan :

procedure TForm1.Image9Click(Sender: TObject);
begin
  ADOTable1.Close;
  ADOTable1.Open;
end;

/Martin
PS: Kan anbefale at lave indryk ved begin end, det gør koden meget letere at fejl finde og overskue, og det er kun et spm om vane :)
Avatar billede fun22 Nybegynder
04. juli 2002 - 18:04 #9
Det virker sådan da.. man skal klikke en gang og så vente lidt og så klikke igen for at det virker.
Avatar billede martinlind Nybegynder
04. juli 2002 - 18:09 #10
Det lyder mærkeligt, Prøv at klikke en gang og vent og se hvad der sker

procedure TForm1.Image9Click(Sender: TObject);
begin
  screen.cursor := crHourGlass;
  try
    ADOTable1.Close;
    ADOTable1.Open;
    screen.cursor := crDefault;
  except
      screen.cursor := crDefault;
      ShowMessage('Fejl !!');
  end;
end;
Avatar billede fun22 Nybegynder
04. juli 2002 - 18:13 #11
med den kode du lige har skrevet, kommer den med det samme. Tak for hjælpen. :)
Avatar billede martinlind Nybegynder
04. juli 2002 - 18:24 #12
Selv tak :)
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