Einzelnen Beitrag anzeigen

BBJ

Registriert seit: 23. Jul 2007
Ort: Dresden
7 Beiträge
 
#11

AW: Komponenten in eigenen Funktionen verwenden

  Alt 17. Jun 2010, 16:16
Danke für die vielen schnellen Antworten
Schreib die Methode doch unter private oder public PArt der TForm1, dann kennt diese auch die internen Klassenvariablen.
->Ja sowas hatte ich schon einige Male versucht aber das ging irgendwie schief, hier mal der Code
Delphi-Quellcode:
public
    function ReadLog(Logname,searchstr :String;Liste:Tlistbox;HTTPrs:TidHTTP):String;
    { Public-Deklarationen }
end;
Und im Implementationsbereich dann

Delphi-Quellcode:
function ReadLog(Logname,searchstr :String;Liste:Tlistbox;HTTPrs:TidHTTP): String;
var
  A,B:string;
  checker:integer;
begin

  Assignfile(fileo,Folder+Logname);
[...]

end;
Beim compilieren kommt dann aber ein Fehler für den oublic-Bereich
[DCC Fehler] Unit1.pas(68): E2065 Ungenügende Forward- oder External-Deklaration: 'TLogFinderForm.ReadLog'

Oder stelle den Namen der Instanz der Komponente voran:
Form1.Label1.Text := 'Bl Bla Bla'; Wobei das ein schlechter Stil wäre ( und auch gewisse Gefahren birgt, da man immer auf eine bestimmte Instanz zugreift)
->Das funktioniert aber wenn das schlechter Stil ist würd ichs gern auf anderen Wege lösen, trozdem Danke für die Info

In der Funktion möchte ich einmal sagen ProgressBar.Position:=ProgressBar.Position+1
Wieso übergibst du die zu verwendende Progressbar nicht als Parameter für deine Funktion?
->Das habe ich am Anfang auch immer gemacht aber wenn ich so 8 Komponenten habe, auf die jeweils einmal zugreife macht sich das immer Doof das noch in die riesige Parameterliste zu adden und alle funktionsaufrufe umzuschreiben falls mal wieder was dazu kommt
  Mit Zitat antworten Zitat