Avatar billede hestetoften Nybegynder
28. december 2003 - 01:46 Der er 10 kommentarer og
1 løsning

Name som variabel ?

Er der en der kan se hvad der skal lave om for at dette kommer til at virke ??

Jeg vil at proceduren kalder functionen med disse værdier:
labelnavn : navnet på den label det drejer sig om.
Aktuelstyle : den style der skal håndteres.
sendername : Navnet på den Chechbox der kaldte functionen.

procedure TSettingsForm.CssKeyItalicClick(Sender: TObject);
begin
  StyleSetter('CssLabel','fsItalic',sender);
end;

function StyleSetter(labelnavn,Aktuelstyle,sendername:string):string;
begin
if [sendername].Checked then
  labelnavn.Font.Style := labelnavn.Font.Style + [+Aktuelstyle+]
else
  labelnavn.Font.Style := labelnavn.Font.Style - [+Aktuelstyle+];
  ApplyBtn.Enabled := true;
end;
Avatar billede baxos Nybegynder
28. december 2003 - 01:50 #1
hvilken fejl får du?
Avatar billede hestetoften Nybegynder
28. december 2003 - 01:59 #2
jeg får fejlen her
if [sendername].Checked then
og den er :
[sendername] : ordinal type required
Avatar billede baxos Nybegynder
28. december 2003 - 02:23 #3
hvorfor skriver du også  [sendername]  istedet for  sendername
Avatar billede hestetoften Nybegynder
28. december 2003 - 02:35 #4
Jeg er lidt på herrens mark her, og har prøver næsten alt, men jeg kan ikke selv løse dette.

Håber at I andre kan hjælpe mig med at få dette løst. !!
Avatar billede hestetoften Nybegynder
28. december 2003 - 02:38 #5
Fik dette til at virke !!

function TSettingsForm.tjek(Sender: TObject; labelnavn,Aktuelstyle:string):string;
begin
  if (sender as TCheckBox).checked = true then begin
    ShowMessage(((sender as TCheckBox).name));
    // mangler st få fat i den TLabel der har navnet fra LabelNavn
  end;
end;
Avatar billede fixxxer Nybegynder
28. december 2003 - 03:02 #6
lig et svar og accepter det, så spørgsmålet bliver lukket
Avatar billede Slettet bruger
28. december 2003 - 11:43 #7
Du kan få fat i labelen sådan:

(FindComponent(labelnavn) as TLabel)
Avatar billede hestetoften Nybegynder
28. december 2003 - 12:30 #8
tak til hejhej
så kom jeg videre.
Læg svar for point.
Avatar billede Slettet bruger
28. december 2003 - 12:50 #9
Svar :)
Avatar billede hrc Mester
28. december 2003 - 14:31 #10
Hvorfor ikke bare sende TLabelen som parameter i stedet for at skulle gennem FindComponent?
Avatar billede hestetoften Nybegynder
28. december 2003 - 22:15 #11
Fik denne til at virke som den skulle. :-)

function TSettingsForm.tjek(Sender: TObject; labelnavn:string;Aktuelstyle:TFontStyle):string;
begin
  if (sender as TCheckBox).checked = true then
  (FindComponent(labelnavn) as TLabel).Font.Style := (FindComponent(labelnavn) as TLabel).Font.Style + [Aktuelstyle]
else
  (FindComponent(labelnavn) as TLabel).Font.Style := (FindComponent(labelnavn) as TLabel).Font.Style - [Aktuelstyle];
  ApplyBtn.Enabled := true;
end;

procedure TSettingsForm.CssKeyItalicClick(Sender: TObject);
begin
tjek(sender,'csskeylabel',fsItalic);
end;
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