OnMessage()

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Eclipticon
Beiträge: 292
Registriert: Sa 5. Feb 2011, 20:38
OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
CPU-Target: 32Bit
Wohnort: Wien

OnMessage()

Beitrag von Eclipticon »

Hi,

ich versuch gerade, den folgenden Delphi-Code (von http://delphi.about.com/od/windowsshell ... 00703b.htm" onclick="window.open(this.href);return false;) in einem Lazarus-Projekt zu verbauen:

Code: Alles auswählen

procedure TForm1.FormCreate(Sender: TObject);
begin
   Application.OnMessage := AppMessage;
end;
 
procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
   if Msg.Message = MyMsg then
   begin
      Application.Restore;
      SetForeGroundWindow(Application.MainForm.Handle);
      Handled := true;
   end;
end;
Dummerweise haben aber weder Application noch TForm einen Event namens OnMessage ... wie kann ich in Lazarus mit SendMessage() generierte Nachrichten auswerten?

Danke fuer Euren Input!

DiBo33
Beiträge: 334
Registriert: Do 11. Okt 2007, 18:01

Re: OnMessage()

Beitrag von DiBo33 »

Willst du nur eine Instance deines Programms zulassen?
http://wiki.lazarus.freepascal.org/UniqueInstance/de" onclick="window.open(this.href);return false;

Eclipticon
Beiträge: 292
Registriert: Sa 5. Feb 2011, 20:38
OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
CPU-Target: 32Bit
Wohnort: Wien

Re: OnMessage()

Beitrag von Eclipticon »

Ja, will ich, UniqueInstance kann ich aber aus Lizenzgruenden nicht verwenden ...

DiBo33
Beiträge: 334
Registriert: Do 11. Okt 2007, 18:01

Re: OnMessage()

Beitrag von DiBo33 »

Aber du kannst dir anschauen, wie es mit den Messages gelöst wurde.

marcov
Beiträge: 1102
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: OnMessage()

Beitrag von marcov »

Eclipticon hat geschrieben:Ja, will ich, UniqueInstance kann ich aber aus Lizenzgruenden nicht verwenden ...
Dan kannst du auch Lazarus oder FPC nicht verwenden? Dessen Bilbiotheken sind unter denselben Lizenz.

Eclipticon
Beiträge: 292
Registriert: Sa 5. Feb 2011, 20:38
OS, Lazarus, FPC: Windows XP VirtualBox (FPC 2.6.4, Laz 1.2.4)
CPU-Target: 32Bit
Wohnort: Wien

Re: OnMessage()

Beitrag von Eclipticon »

marcov hat geschrieben:Dan kannst du auch Lazarus oder FPC nicht verwenden? Dessen Bilbiotheken sind unter denselben Lizenz.
Der Mensch erschreckt mich ;-) Ich hatte mich bei UniqueInstance verlesen und gedacht, es waere unter GPL, ist aber LGPL ... dann werd ich doch einen naeheren Blick drauf werfen ... Danke!

Antworten