AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Fenster erzeugen und anzeigen ohne, dass es Fokus erhält
Thema durchsuchen
Ansicht
Themen-Optionen

Fenster erzeugen und anzeigen ohne, dass es Fokus erhält

Ein Thema von s.h.a.r.k · begonnen am 21. Mai 2010 · letzter Beitrag vom 21. Mai 2010
Antwort Antwort
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

Fenster erzeugen und anzeigen ohne, dass es Fokus erhält

  Alt 21. Mai 2010, 00:29
Guten Abend,

im Threadtitle steht ja schon meine Frage Und zwar will ich eine Form erzeugen, anzeigen, in den Vordergrund bringen, ohne dass es dabei den Fokus erhält. Dieser soll in einem Edit-Feld verbleiben, ohne dass dieses jemals den Fokus verliert. Änderungen im Edit-Feld triggern die Sichtbarkeit des Formulars.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Fenster erzeugen und anzeigen ohne, dass es Fokus erhält

  Alt 21. Mai 2010, 06:36
Einfach danach den Fokus auf das Editcontrol zurücksetzen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

Re: Fenster erzeugen und anzeigen ohne, dass es Fokus erhält

  Alt 21. Mai 2010, 08:28
Da gibt es mehrere Wege und einer wäre MSDN-Library durchsuchenShowWindow inkl. SW_SHOWNOACTIVATE

[edit]
und falls das Fenster schon sichtbar ist, dann MSDN-Library durchsuchenSetWindowPos mit SWP_NOACTIVATE
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#4

Re: Fenster erzeugen und anzeigen ohne, dass es Fokus erhält

  Alt 21. Mai 2010, 09:38
Zitat von himitsu:
Da gibt es mehrere Wege und einer wäre MSDN-Library durchsuchenShowWindow inkl. SW_SHOWNOACTIVATE

[edit]
und falls das Fenster schon sichtbar ist, dann MSDN-Library durchsuchenSetWindowPos mit SWP_NOACTIVATE
@himitsu: Danke, das ist glaub genau das was ich gesucht habe

@mkinzler: Klar, das wäre eine Lösung, allerdings fange ich in einem Control die Nachrichten ab und führe eine Methode aus, wenn das Edit den Fokus verliert, ergo funktioniert das leider nicht ganz. Ich könnte hier zwar einen Timer einführen, aber das wäre eher eine unsaubere Lösung. Bisher habe ich auch Visible immer auf True gelassen und das Fenster über AlphaBlendValue aus- bzw. eingefadet (was ich dauerhaft beibehalten will), aber das ist halt auch nicht wirklich sauber.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  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 18:44 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