Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#10

AW: An Property zwei werte übergeben

  Alt 3. Jul 2012, 10:59
fbtnBlinkLight[ChannelNo].ButtonBlink(fbtnBlinkLight[ChannelNo].Handle, 25);
Das ist dabei herausgekommen? Wieso übergibst Du "fbtnBlinkLight[ChannelNo]" sein eigenes Handle?
Tja das möchtest du gerne wissen....

fbtnBlinkLight ist ein Control "ISkinImageButton" das über CreateWindowEx erstellt wurde
Jedes hat also seine eigenen propertys
Das Control mit all seinen eigenschaften wird in eine Liste gespeichert.
Um mir ein leidiges hin und her mit arrays zu ersparen übergebe ich einfach das eigenen Handle mit.

Das ist nur interessant für die DLL schließlich muss hier das Control auch identifizierbar sein.

Es ist also eine frage des Aufwands!
Ein über CreateWindowEx erstelltes Window benötigt eine eindeutige Identifizierungs Nummer

Was ist jetzt einfacher
Das..
fbtnBlinkLight[ChannelNo].ButtonBlink(fbtnBlinkLight[ChannelNo].Handle, 25);

oder das..
fbtnBlinkLight[ChannelNo].ButtonBlink(SKAERO_GetMainItem(MainHandle, ID_BLINKLIGHT_FIRST), 25);

MainHandle ist das ParentWIndow auf dem sich das Control befindet
Zurück geliefert wird das Handle von fbtnBlinkLight also fbtnBlinkLight[ChannelNo].Handle

GetMainItem identifiziert das Handle über die angegebene ID mit GetDlgItem(hOwner, UseID)

Und das spare ich mir einfach in dem ich das eigene Handle mit übergebe.
Übergeben werden muss es so oder so.

gruss

Geändert von EWeiss ( 3. Jul 2012 um 11:28 Uhr)
  Mit Zitat antworten Zitat