Avatar billede snowball Novice
03. marts 2003 - 16:13 Der er 4 kommentarer og
2 løsninger

TDBGrid - SelectedField.DisplayText

Hej !

Jeg prøver på at hente værdierne af de valgte kolonner i et DBGrid. Det går også helt fint når der kun er 1 kolonne i grid'et, men når der er flere, så kan jeg ikke lige få den til at tage værdierne fra de efterfølgende kolonner.

Jeg bruger følgende til at hente den første værdi:

DBData.SelectedField.DisplayText

Så kiggede jeg lidt nærmere på DisplayText, som er en TField variant, og så at det var Strings, og så prøvede jeg med DBData.SelectedField.DisplayText[0] og DBData.SelectedField.DisplayText[1] men så får jeg bare at vide at element 0 er inaccessible.

Nogen forslag !? :)

Snowball
Avatar billede pjotre Novice
03. marts 2003 - 16:45 #1
DBGrid skal være knyttet til en datasource, som skal være knyttet til en table, som skal være aktive.
Så henter du dataene få følgende måde:
edit1.text := DBGrid1.Fields[2].asstring;
Mvh. Pjotre
Avatar billede stoney Nybegynder
03. marts 2003 - 16:46 #2
Jeg ved ikke om det er det du mener, men det virker

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
label1.Caption := dbgrid1.SelectedField.AsString;
end;

Stoney
Avatar billede snowball Novice
03. marts 2003 - 16:59 #3
pjotre: De er knyttet sammen som de skal. Kan bare ikke lige se hvordan det du har skrevet kan give mig værdien for den valgte række !?

stoney: Den er en string i forvejen, og kan heller ikke her se hvordan det kan give mig værdien for den valgte række !?

Har også prøvet mig lidt frem med DBGrid1.SelectedRows.Items[i] men det var heller ikke nogen videre success.

Snowball
Avatar billede pjotre Novice
03. marts 2003 - 17:08 #4
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
edit1.text := DBGrid1.Fields[dbgrid1.SelectedIndex].asstring;
end;
Mvh. Pjotre
Avatar billede stoney Nybegynder
03. marts 2003 - 17:16 #5
procedure TForm1.DBGrid1CellClick(Column: TColumn);
var
i : integer;
s : string;
begin
s := '';

for i := 0 to dbgrid1.Columns.Count - 1 do
s := s + (dbgrid1.Fields[i].AsString)+',';
label1.Caption := s;
end;

Stoney
Avatar billede snowball Novice
04. marts 2003 - 08:41 #6
Kan se jeg ikke lige helt tænkte mig om i går. pjotre's første svar er korrekt ;)

Stoney får lidt for forsøget :)

Tak for hjælpen.

Snowball
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