AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Fenster bei Mausklick nicht aktivieren,ab. OnClick ausführen
Thema durchsuchen
Ansicht
Themen-Optionen

Fenster bei Mausklick nicht aktivieren,ab. OnClick ausführen

Ein Thema von Steve · begonnen am 10. Jun 2005 · letzter Beitrag vom 10. Jun 2005
Antwort Antwort
Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#1

Fenster bei Mausklick nicht aktivieren,ab. OnClick ausführen

  Alt 10. Jun 2005, 13:15
Hi,

wie kann ich es realisieren, dass mein Programm , wenn ein anderes Programm den Focus hat, bei einem Klick auf einen Button nicht aktiviert wird, der Focus beim anderen Programm bleibt und dennoch die OnClick-Behandlungsroutine des Buttons ausgeführt wird?

Folgendes habe ich bereits versucht:
Delphi-Quellcode:
TForm1 = Class(...)
...
    procedure WMMouseActivate(var Message : TWMMouseActivate); message WM_MOUSEACTIVATE;
...

procedure TForm1.WMMouseActivate(var Message: TWMMouseActivate);
begin
  // Sicherstellen, dass eigenes Programm nicht aktiv ist
  if (not Application.Active) or (not Active) then
  begin
    //MA_NOACTIVATE = Nicht aktivieren, aber Klick ausführen.
    message.Result := MA_NOACTIVATE;
  end;
end;
Dabei geschieht aber nicht ganz das was ich will, sondern folgendes:
Klick auf Fenster-Fläche: Fremde Anwendung verliert Focus, eigene Anwendung wird nicht aktiviert (immerhin)
Klick z.B. auf Button: Fremde Anwendung verliert Focus, eigene Anwendung wird aktiviert, OnClick wird ausgeführt

Wo liegt mein Fehler?

Danke schonmal,
Gruß
Stephan
[edit]Tippfehler[/edit]
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#2

Re: Fenster bei Mausklick nicht aktivieren,ab. OnClick ausfü

  Alt 10. Jun 2005, 13:24
Hallo,
du könntest vielleicht eine WM an die externe Anwendung schicken, so dass diese den Fokus wieder bekommt. Welche und wie du das machen kannst kann ich dir aber auch nicht sagen.

Wozu soll das denn eigentlich gut sein?

Florian
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat
Benutzerbild von Steve
Steve

Registriert seit: 2. Mär 2004
Ort: Würzburg
730 Beiträge
 
Delphi 2006 Personal
 
#3

Re: Fenster bei Mausklick nicht aktivieren,ab. OnClick ausfü

  Alt 10. Jun 2005, 13:41
Hi,

ich hatte es schon mit GetFocus und SetFocus aus der Unit Windows versucht, aber GetFocus hat leider 0 zurückgeliefert. Also da liegt das Problem schon darin, dass ich das Handle von der vorher aktiven Anwendung nicht erhalte Am liebsten wäre es mir, wenn die andere Anwendung den Focus gar nicht erst verliert, ansonsten wäre das Zurücksetzen des Focus aus meinem Programm heraus wohl die nächste Möglichkeit, jo!
Zum Sinn und Zweck: ich möchte mir ein kleines Tool schreiben, das auf Mausklick Standardtext in die aktive Anwendung eingibt (vgl. Bei Google suchenTypeItIn). Und nein, ich möchte es nicht über Tastenkombinationen und Hooks etc. machen

Gruß
Stephan
Stephan B.
Wer andern eine Grube gräbt ist Bauarbeiter!
Wer im Glashaus sitzt, sollte sich lieber im Dunkeln ausziehen!
Außerdem dieser Satz kein Verb...
  Mit Zitat antworten Zitat
Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#4

Re: Fenster bei Mausklick nicht aktivieren,ab. OnClick ausfü

  Alt 10. Jun 2005, 13:54
Also da kann ich die auch nicht helfen...
Du müstest halt das Handle der erst aktivien Anwendung rausbekommen, dann funktioniert SetFocus auch sicherlich.
Ansonsten hätte ich dir zum HotKey geraten, aber da du das ja nicht willst...

Florian
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  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 02:36 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