AGB  ·  Datenschutz  ·  Impressum  







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

Komponente bei einem Handle erzeugen

Ein Thema von Helmi · begonnen am 26. Okt 2005 · letzter Beitrag vom 27. Okt 2005
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#1

Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 22:17
Hallo,

weiss jemand ob man an einem Handle eine Komponente erzeugen kann?

also ich meinte so:

Delphi-Quellcode:
var
  test_Compo: TLabel;

begin
  test_Compo := TLabel.Create(<<handle>>);

{ ... }
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 22:38
Nee Helmi, so nicht. Der Owner, den du bei TLabel.Create() angibst, ist ein VCL-Konstrukt, welches sich in einer Liste seine Verantwortlichkeiten merkt. Das Handle gehört mehr in die Non-VCL-Welt - auch wenn die VCL dir den Zugriff darauf gewährt.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#3

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 22:42
aber gibt es ne Möglichkeit über Umwege?

Eigentlich sollte es ja eine TForm sein, das TLabel war nur ein Beispiel
(was ja eigentlich bei der Frage egal ist)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#4

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 22:43
Hi,
ich denke Marabu hat da mal total recht, du wirst wohl non-VCL programmieren müssen. Und da müsste dann die Funktion CreateWindow das sein was du suchst. Die ist eigentlich im Windows SDK ganz gut erklärt. Ansonsten findest du hier sicherlich noch dass ein oder andere Tut. (z.B. von Luckie denke ich) zu non-VCL und wie man da eigene Controlls erstellt.

Gruß Der Unwissende
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 23:04
@Helmi: Wenn du das ganze eigentlich für ein TForm machen willst seh ich den Sinn nicht denn ein TForm hat ein Handle. Der Vergleich mit einem TLabel ist da auch etwas daneben weil ein TLabel nie ein Handel hat da es sich auf die Canvas des Parents zeichnet (man kann dem TLabel zwar auch ein Handle verpassen aber die messages beziehen sich dann nicht auf die darstellung des Labels sondern eines unsichtbaren Fensters)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 23:11
dann muss ich mal auspacken:

ich möchte eine TForm an einem SysTray anzeigen lassen.
Ich weiss den Handle des Icons da unten.

Deshalb würd ic hgerne das TForm an den handle anhängen
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 23:13
wie jetzt? Kannst du mal versuchen das etwas genauer zu erklären? Im Moment klingt es so als ob du dein Form im Systray plazieren willst
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#8

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 23:20
ALSO: (*tief Luft hol*)

ich hab ein SysTray mit einem Icon

Ich weiss von dem diesem SysTray das Icon

ich will an dem Icon ein TForm anhängen, sozusagen als InfoBox
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

Re: Komponente bei einem Handle erzeugen

  Alt 26. Okt 2005, 23:27
Hir geht es ziemlich gehörig durcheinander. Ein Handle ist nichts weiter als eine eindeutige Kennnummer damit Windows Objekte (hier nicht im OOP Sinne), wie Fenster, Dateien usw. referenzieren kann. Ein Handle ist also ein abstraktes Gebilde an das man nichts dranhängen kann.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
xaromz

Registriert seit: 18. Mär 2005
1.682 Beiträge
 
Delphi 2006 Enterprise
 
#10

Re: Komponente bei einem Handle erzeugen

  Alt 27. Okt 2005, 10:02
Hallo,

die ganze Idee hört sich zwar etwas komisch an, aber die grundsätzliche Vorgehensweise, um ein WinControl einem anderen Control hinzuzufügen, von dem man nur das Handle kennt, lautet:
Image := TImage.CreateParented(Form1.Handle); Gruß
xaromz
  Mit Zitat antworten Zitat
Antwort Antwort


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 16:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz