AGB  ·  Datenschutz  ·  Impressum  







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

Ab wann hat ein Fenster ein Handle?

Ein Thema von R2009 · begonnen am 8. Jan 2010 · letzter Beitrag vom 11. Jan 2010
 
R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Ab wann hat ein Fenster ein Handle?

  Alt 8. Jan 2010, 11:49
Hi,
so funktiert das. Form2 ist zwar erzeugt aber noch nicht dargestellt.

Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var
  TestHandle: HWND;
begin
  // Erstellen
  TestHandle:= AllocateHWnd( form2.GetMessages); // Übergeben wird die Methode zum Empfangen der Nachricht
  SendMessage(TestHandle, SET_LNG_CMD, 0, 0 );
  // Freigeben
  DeallocateHWnd( TestHandle);
end;

public
  { Public-Deklarationen }
  procedure GetMessages(var msg: Tmessage); message SET_LNG_CMD;

procedure TForm2.GetMessages(var msg: Tmessage);
begin
  if msg.msg = SET_LNG_CMD then
  begin
    ShowMessage('Fenster 2');
  end;
end;
Jetzt reagiert das Fenster obwohl es noch nicht angezeigt wird.

Zum Hintergrund:
Wir hatten die Sprachabhängigen Texte usw immer im onactivate des entsprechenden Fensters geladen.
Das ganze wurde aus Performancegründen so gemacht. Unsere Fenster sind all modal.

Vorteil:
Jedes Fenster ist dann wenn es gebraucht wird auf dem aktuellen Stand (siehe sprachwechsel oder so).

Nachteil:
Ich muss den Code (unnötigerweise) immer wieder durchlaufen (jedesemal wenn ich das fenster öffne)

Ich plane das Ganze zentral über Botschaften zu initiieren und zwar dann wenn das Fenster erzeugt ist und auch wenn die Sprache gewechselt wird.

Danke an alle
Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat
 


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 01:59 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