AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Handle von TObject

Ein Thema von Die Muhkuh · begonnen am 30. Aug 2004 · letzter Beitrag vom 30. Aug 2004
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#1

Handle von TObject

  Alt 30. Aug 2004, 08:11
Hi,


ich erste dynamisch ein paar kompos. Denen weise ich ein "OnMouseMove" Event zu. Im OnMouseMove Event soll das Label verschoben werden.

Delphi-Quellcode:
ReleaseCapture;
  SendMessage(Sender.Handle,WM_SysCommand,$f012,0);

Das Problem, das es kein Sender.Handle gibt. Wie bekomme ich ein Handle auf den Sender (TObject)?


[edit] Schreib-Recht-Fehler [/edit]
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Handle von TObject

  Alt 30. Aug 2004, 08:17
Hi,

wer ist den der Sender? Wenn es ein Edit oder ein Memo ist könntest du nach TWinControl casten. TWinControl hat eine Eigenschaft "Handle".

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Handle von TObject

  Alt 30. Aug 2004, 08:19
Hi,


der Sender ist ein TprLabel. Das ist abgeleitet von TGraphicControl
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Handle von TObject

  Alt 30. Aug 2004, 08:25
Zitat von Spider:
Hi,


der Sender ist ein TprLabel. Das ist abgeleitet von TGraphicControl
Hi,

dann muss ich dich Leider enttäuschen, TGraphicControl und auch TLabel besitzen kein Handle.
Falls du ein Label mit Handle brauchst, nimm ein TStaticText (o.Ä.). Das ist imho die Kapselung des WinAPI 'STATIC' und besitzt daher ein Handle.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Handle von TObject

  Alt 30. Aug 2004, 08:26
gibt es keine möglichkeit? Und was wenn ich die Kompo ableite und noch ein Handle "dazu mache"?
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Handle von TObject

  Alt 30. Aug 2004, 08:31
Zitat von Spider:
gibt es keine möglichkeit? Und was wenn ich die Kompo ableite und noch ein Handle "dazu mache"?
Also mir fällt derzeit keine Alternative zu TWinControl-Komponenten ein - vielleicht gibts auch keine.
Was versteht du unter "ein Handle dazu machen". Wenn lediglich die Eigenschaft existiert, heisst das nicht, dass du damit arbeiten kannst.

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#7

Re: Handle von TObject

  Alt 30. Aug 2004, 10:12
Hi Manuel!

Zitat von Spider:
Und was wenn ich die Kompo ableite und noch ein Handle "dazu mache"?
Da empfehle ich dir wirklich, TStaticText zu verwenden bzw. abzuleiten und so zu verändern, dass sie deinen Vorstellungen entspricht. Wenn du ein Handle dazumachen willst, musst du dir wahrscheinlich etwas einfallen lassen, um nicht mit Windows-Handles in Konflikt zu kommen, so dass diese nicht evtl. verwechselt werden. Und außerdem, wenn Windows diese Handle-Sache schon anbietet, wieso willst du das Rad ein zweites Mal erfinden?

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Handle von TObject

  Alt 30. Aug 2004, 12:12
Dann verschieb das Ding doch mit den Eigenschaften Left und Top.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#9

Re: Handle von TObject

  Alt 30. Aug 2004, 12:17
Hi,


@Luckie

siehe hier warum ich nicht Top und Left benutzen möchte:

http://www.delphipraxis.net/internal...994&highlight=
  Mit Zitat antworten Zitat
teebee

Registriert seit: 17. Jan 2003
Ort: Köln
460 Beiträge
 
Delphi 6 Professional
 
#10

Re: Handle von TObject

  Alt 30. Aug 2004, 13:19
Also, wenn Du das Label transparent machen kannst, sieht folgendes eigentlich ganz akzeptabel aus:
Delphi-Quellcode:
Var Maus: Boolean;
    OffX, OffY: Integer;

procedure TForm1.Label1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Maus := True;
  OffX := X;
  OffY := Y;
end;

procedure TForm1.Label1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  Maus := False;
end;

procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
Var MyLabel: TLabel;
    FormKoord: TPoint;
begin
  If Maus Then Begin
   MyLabel := Sender As TLabel;
   FormKoord := ScreenToClient(MyLabel.ClientToScreen(Point(x,y)));
   MyLabel.SetBounds(FormKoord.x-OffX,FormKoord.y-OffY,MyLabel.Width,MyLabel.Height);
  End;
end;
Gruß, teebee
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz