Einzelnen Beitrag anzeigen

Danyel

Registriert seit: 7. Okt 2009
Ort: Lübeck
15 Beiträge
 
Delphi 5 Standard
 
#6

Re: OnMouseDown Methode hinzufügen->Label wird per Code e

  Alt 27. Mär 2010, 21:01

oh man ^^
Da hätt ich auch selber draufkommen können, vielen dank.
hmm aber mir war mal so, dass wenn ich selbst die Proceduren geschrieben hatte,
die nicht erkannt worden, sondern erst nachdem ich diese durch doppelklicken bei dem
bestimmten Ereigniss hinzugefügt hatte. Naja, wie dem auch sein, ich werde es sofort testen
und noch mal vielen Dank für die schnellen Antworten.
Wenn es interessiert kann ich mein Projekt auch gerne mal vorstellen.
MfG Danyel S.



EDIT:
hmm also ich habe das nun folgendermaßen hinzugefügt:

Delphi-Quellcode:
for i:=0 to memo1.Lines.Count-1 do
       begin
            MyLabel:=TLabel.Create(Form3);
            with MyLabel do
            begin
                  ProcessPath(memo1.Lines[i], laufwerk, verzeichnisse, datei);
                  Caption:=datei;
                  Name:='label'+IntToStr(i);
                  left:=15;
                  top:=10+i*13;
                  width:=10;
                  height:=10;
                  visible:=true;
                  parent:=form3;
                  onmousedown;
                  onmouseup;
                  onmousemove;
            end;
       end;
Wenn ich auf Form3 nun aber die procedure dafür erstellen möchte mit:
Delphi-Quellcode:
procedure mylabel.onmousedown;
begin
      move:=true;
end;
oder

Delphi-Quellcode:
procedure label1.onmousedown;
begin
      move:=true;
end;
zeigt er mir mylabel oder halt label1 rot an, da diese im moment logischerweise nicht
existieren. Entweder bin ich zu doof oder einfach inzwischen zu Müde, aber im Moment habe
ich keine Ideen mehr.
Für erneute Hilfe wäre ich dankbar, denn wenn das klappt, ist mein Programm zu 99% fertig.

EDIT2
ich bin glaube ich echt zu müde, habe meinen vermutlichen Fehler gefunden.
Muss den On-Ereignissen ja eigene Proceduren zuweisen ^^

Delphi-Quellcode:
for i:=0 to memo1.Lines.Count-1 do
       begin
            MyLabel:=TLabel.Create(Form3);
            with MyLabel do
            begin
                  ProcessPath(memo1.Lines[i], laufwerk, verzeichnisse, datei);
                  Caption:=datei;
                  Name:='label'+IntToStr(i);
                  left:=15;
                  top:=10+i*13;
                  width:=10;
                  height:=10;
                  visible:=true;
                  parent:=form3;
                  onmousedown:=aktivieren;
                  onmouseup:=deaktivieren;
                  onmousemove;
            end;
       end;
       end;
end;

procedure TForm3.aktivieren(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
      move:=true;
end;
Anscheind bin ich zu doof, die Proceduren dafür zum Laufen zu bekommen
Auch wenn am Ende dein Programm nicht läuft,
so bist mit dem Weg gewachsen und nichts war
umsonst!
  Mit Zitat antworten Zitat