Behöver hjälp med koden för att hämta två kolumners värden ifrån en Access databas. Ska göra en meny så som favoriter i IE och ska hämta internetaddressen och namnet. Namnen ska listas under menyn Favoriter.
Man måste göra en loop tror jag men fattar inte hur jag ska göra. Det är 20 namn och 20 addresser som ska hämtas!
Nån som har lust att hjälpa mig med koden? SKulle avra oerhört tacksam!
aQuery.SQL.Add('select * from tabell');
aQuery.Open;
while not aQuery.Eof do
begin
aMenuItem := aMenuItem.Create(self);
minMeny.Items.Add(aMenuItem);
aMenuItem.Caption := aQuery.FieldByName('namn'
); osv....
aQuery.Next;
end;
aQuery.Close;
Du får snygga till koden. Säkerligen nåt jag har missat då jag skrev den ur minnet.
aMenuItem är ett objekt av classen TMenuItem. Brukar ge mina lokal objekt prefixet a. TMenuItem är en "rad" i en meny.
minMeny antar jag är MainMenu1 lr?
yepp
aQuery är mitt TQuery objekt.
aQuery.FieldByName('namn')
hämtar värdet som ligger i namn kolumnen. Om du vill hämta värdet från någon annan kolumn så är det bara att du byter ut namn mot namnet på den kolumnen.
För att hämta värdet från adresskolumnen så skriver du:
procedure TForm1.FormCreate(Sender: TObject);
var
Favoriter : TMenuItem;
begin
ADOQuery1.SQL.Add('select * from THist');
ADOQuery1.Open;
while not ADOQuery1.Eof do
begin
Favoriter := Favoriter.Create(self);
MainMenu1.Items.Add(Favoriter);
Favoriter.Caption := ADOQuery1.FieldByName('Address').asstring;
ADOQuery1.Next;
end;
ADOQuery1.Close;
end;
Cant get this dame thing to work!!
Om jag fattar rätt så är det meningen att här ska det skapas en rubrik i MainMeny1 som heter Favoriter och där under ska alla Addresser listas upp under!? Stämmer det? Får den inte att funka iallfall.. den klagar på
[Warning] uBrowser.pas(147): Variable 'Favoriter' might not have been initialized
Vad har jag gjort fel! Låt oss säga att jag sen vill fixa så man kan klicka på namnen så kommer man till hemsidan. Hur kan koden bli då? vet nte riktigt.. det komplicerar det genom att man måste kunna klicka på den. En array med 100000 platser kanske!? hrmm.. måste fnnas ett enklare sätt..