AGB  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

Ein Thema von Helmi · begonnen am 23. Mai 2012 · letzter Beitrag vom 24. Mai 2012
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: München, Republik Bayern
2.773 Beiträge
 
Delphi XE2 Professional
 
#1

Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 20:32
Hallo,

mittels folgendem Code versuche ich eine Form anzeigen zu lassen, ohne das sie den Fokus erhält
(Code aus dem Forum).

Delphi-Quellcode:
If sichtbar then
  ShowWindow(Handle, SW_SHOWNOACTIVATE)
else
  ShowWindow(Handle, SW_HIDE);
Es funktioniert auch soweit. Also soweit dass die Form ohne Fokus angezeigt wird.
Leider seh ich nur ein weisses Feld in der Größe der Form, dummerweise aber total leer.
Auf dem Bild sieht man es.

Ich sollte noch erwähnen, dass folgende Eigenschaft gesetzt ist: BorderStyle = bsNone .

Mach ich aber Show seh ich alles auf der Form. Nur hat die Form damit auch den Fokus, was ich aber nicht möchte.

Was ist da faul? - Bzw. wie bekomme ich es hin, dass die Form keinen Fokus hat, dafür aber alles sichtbar ist?
Miniaturansicht angehängter Grafiken
neu-2.jpg  
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
24.844 Beiträge
 
Delphi XE3 Professional
 
#2

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:12
Passiert was, wenn du ein Perform(CM_VISIBLECHANGED, Ord(sichtbar), 0); hinterherschickst?

Ist Visible danach True?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2012

Geändert von himitsu (23. Mai 2012 um 21:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: München, Republik Bayern
2.773 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:16
Passiert was, wenn du ein Perform(CM_VISIBLECHANGED, Ord(sichtbar), 0); hinterherschickst?
Leider nein! - Es bleibt wie bisher: leer!
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
34.994 Beiträge
 
Delphi 2006 Professional
 
#4

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:23
Und wenn du da nach das Fenster neu zeichnen lässt?
Michael
"Every language has an optimization operator. In Delphi that operator is: //"
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: München, Republik Bayern
2.773 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:27
Und wenn du da nach das Fenster neu zeichnen lässt?
Ich habs mit Repaint als auch Refresh probiert - bei beiden das gleiche Phänomen.
Es ändert sich nichts an der Sichtbarkeit der Komponenten auf der Form - sie werden
nicht angezeigt.
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
Ort: Vöhringen (Bayern)
3.293 Beiträge
 
Delphi XE3 Professional
 
#6

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:27
Delphi-Quellcode:
ShowWindow(Form3.Handle, SW_SHOWNOACTIVATE);
Form3.Visible := True;
Das sollte helfen. Beim SW_HIDE natürlich Visible := False setzen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
24.844 Beiträge
 
Delphi XE3 Professional
 
#7

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 23. Mai 2012, 21:39
Delphi-Quellcode:
    ShowWindow(Handle, SW_SHOWNOACTIVATE);
    Visible := True;
?

[edit]
Ups, wo kommt den jbg denn urplötzlich her.
Aber scheinbar sieht es so gut aus.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
Delphi-Tage 2012

Geändert von himitsu (23. Mai 2012 um 21:41 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: München, Republik Bayern
2.773 Beiträge
 
Delphi XE2 Professional
 
#8

AW: Inhalt einer Form bei Aufruf "SW_SHOWNOACTIVATE" nicht sichtbar

  Alt 24. Mai 2012, 17:51
Delphi-Quellcode:
ShowWindow(Form3.Handle, SW_SHOWNOACTIVATE);
Form3.Visible := True;
Das sollte helfen. Beim SW_HIDE natürlich Visible := False setzen.
Danke! - das hat funktioniert.

Habs jetzt so gemacht:

Delphi-Quellcode:
  If sichtbar then
    begin
      ShowWindow(Handle, SW_SHOWNOACTIVATE);
      Visible := true;
      Repaint;
      BringToFront;
    end
  else
    begin
      ShowWindow(Handle, SW_HIDE);
      Visible := false;
    end;
Stimmt die Erklärung, dass mit ShowWindow "an der VCL vorbei" das Fenster angezeigt wird und deswegen die VCL eigentlich gar nicht weiss das das Fenster angezeigt werden soll. Deswegen muss mit Visible das Fenster auch für die VCL sichtbar gemacht werden?!
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<

Geändert von Helmi (24. Mai 2012 um 18:04 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2013 by Daniel R. Wolf