INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Fenstergröße unter Win7 bestimmen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

04.05.2012, 08:43
Beitrag #1

FEL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 66
Registriert seit: Jun 2007

2015
2005
DE_EN

04229
Deutschland
Fenstergröße unter Win7 bestimmen
Hallo Leute,

ich arbeite an einer Anwendung, welche an einem PC mit 2 Monitoren betrieben wird. Monitor 1 zeigt das Hauptprogramm und auf Monitor 2 sind zwei Fenster zur Datenanzeige (Aufruf der VIs vom Hauptprogramm) zu sehen. Die beiden Datenfenster sollen bündig nebeneinander angeordnet werden. Dazu wird das 1. Datenfenster in die linke obere Ecke des Monitors 2 plaziert. Dann wird die Frontpanel Property FP.WinBounds abgefragt, um den rechten Rand des Fensters zu bestimmen. Diese Position entspricht dann dem linken Rand des 2. Datenfensters.

Damit lassen sich die Fenster nebeneinander anordnen, zumindest unter XP. Unter Win7 klappt dies leider nicht, dann standardmäßig ist bei Win7 ein Rand aus 4 Pixeln um jedes Fenster. Dieser Rand wird aber bei der Property FP.WinBounds leider nicht berücksichtigt. Egal wie groß der Rand eingestellt ist, die Ergebnisse von FP.WinBounds sind gleich.

Gibt es vielleicht eine andere Property, welche die wahre Größe eines Fensters bestimmt? Oder kann man die Größe des Randes ermitteln? Ist sicher in den Weiten der Registry versteckt.

Die Anwendung ist unter LV2010 64 Bit programmiert.

Gruß Micha
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
04.05.2012, 14:16 (Dieser Beitrag wurde zuletzt bearbeitet: 04.05.2012 14:17 von THL.)
Beitrag #2

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 111
Registriert seit: May 2011

2012
2009
EN


Deutschland
RE: Fenstergröße unter Win7 bestimmen
Das Problem kann ich irgendwie nicht nachvollziehen. Mir liefert FP.WinBounds (Front Panel Window:Window Bounds) exakt die Aussenabmessungen des Fensters inklusive Rahmen - sowohl im Aero-Design mit deutlich dickerem Rand als 4 Pixeln als auch im klassisch-Design mit den erwähnten 4 Pixeln.
Sicher dass du FP.WinBounds und nicht versehentlich FP.PanelBounds genommen hast?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.05.2012, 14:39
Beitrag #3

FEL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 66
Registriert seit: Jun 2007

2015
2005
DE_EN

04229
Deutschland
RE: Fenstergröße unter Win7 bestimmen
Da bin ich mir sicher, da ich beide Eigenschaften abfrage.

Ergebnis bei Rand 0 Pixel
   

Ergebnis bei Rand 10 Pixel
   

Gruß Micha
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
04.05.2012, 15:43
Beitrag #4

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 111
Registriert seit: May 2011

2012
2009
EN


Deutschland
RE: Fenstergröße unter Win7 bestimmen
Dumme Frage: Was für ein Windows Layout benutzt du da und wo änderst du die Rahmenbreite?
Nach Windows klassisch sieht das nicht aus, da das grau und Pseudo-3D ist.
Ebensowenig ist das ein Aero Design oder Windows 7 Basis (die sind allesamt deutlich breiter als 4 Pixel).
Dieses
Zitat:standardmäßig ist bei Win7 ein Rand aus 4 Pixeln um jedes Fenster
irritiert mich doch ein wenig...

Spasseshalber habe ich mal mit Windows 7 Basis rumgespielt und dabei korrekte Werte erhalten (siehe angehängtes Bild).
Obere Reihe: 'Rahmen des aktiven Fensters' -> 'Wert' auf 1 gestellt (0 geht da gar nicht)
Untere Reihe Das gleich mit einem Wert von 10, also auf jeder Seite +9, d.h. in der Breite und Höhe jeweils +18.
Das passt wunderbar zu den Werten, die mir der property node ausspuckt...


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2012, 08:13
Beitrag #5

FEL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 66
Registriert seit: Jun 2007

2015
2005
DE_EN

04229
Deutschland
RE: Fenstergröße unter Win7 bestimmen
Hi THL,

danke für Deine Tests. Ich habe mich vielleicht etwas unglücklich ausgedrückt. Sorry. Probleme macht nicht die Rahmenbreite sondern die Rahmenfüllung.

(04.05.2012 15:43 )THL schrieb:  Dumme Frage: Was für ein Windows Layout benutzt du da und wo änderst du die Rahmenbreite?
Nach Windows klassisch sieht das nicht aus, da das grau und Pseudo-3D ist.
Ebensowenig ist das ein Aero Design oder Windows 7 Basis (die sind allesamt deutlich breiter als 4 Pixel).

Auswahl Layout:
Desptop -> rechte Maustaste -> "Anpassen" -> Aero-Designs "Windows 7" auswählen

Rahmenfüllung einstellen:
gleiches Menü wie oben
im unteren Bereich Menüpunkt "Fensterfarbe" auswählen
"Erweiterte Darstellungseinstellungen..." wählen
Element "Rahmenfüllung" wählen -> bei Größe kann die Breite in Pixel eingestellt werden (Standard 4)

Ob Aero Peek ein- oder ausgeschaltet ist, hat keinen Einfluß auf das Problem.
Aero Peek einstellen
Systemsteuerung -> "Erweiterte Systemeinstellungen anzeigen" -> Tab "Erweitert" -> Rahmen "Leistung" Button "Einstellungen..." -> Tab "Visuelle Effekte"

Gruß Micha
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2012, 09:10
Beitrag #6

THL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 111
Registriert seit: May 2011

2012
2009
EN


Deutschland
RE: Fenstergröße unter Win7 bestimmen
Ich habe es eben mit 'Rahmenfüllung' an meinem Aero-Design ausprobiert.
Das Ergebnis ist im angehängten Bild zu sehen (oben 4 Pixel, unten 10 Pixel).
Da es beim Umstellen Darstellungsartefakte gab, habe ich die Labview-Fenster kurz minimiert und wiederhergestellt,
ansonsten - ausser RUN-Knopf zu drücken - nichts weiter dran gemacht.
Auch hier scheint das Ergebnis schlüssig zu sein, d.h. ich kann dein Problem leider noch immer nicht reproduzieren...


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
07.05.2012, 13:25
Beitrag #7

FEL Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 66
Registriert seit: Jun 2007

2015
2005
DE_EN

04229
Deutschland
RE: Fenstergröße unter Win7 bestimmen
Ich habe mir wie Du ein einfaches Beispiel gebastelt und siehe da, die Window Bounds Funktion macht was sie soll. Dann habe ich mit den VI EIgenschaften herumprobiert und die Ursache gefunden. Es liegt an der Eigenschaft "Allow user to resize window" (Eigenschaften VI -> Window Appearance -> Button "Customize..." -> Checkbox "Allow user to resize window").

Wenn Resize deaktiviert ist, liefert Window Bounds die Fensterwerte ohne Rahmenfüllung. Zumindest bei mir.

D.h. ich muß Resize erlauben, das Resize-Ereignis überwachen und bei Änderung der Fenstergröße diese wieder auf den Orginalwert setzen.

Gruß Micha
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  LED-Größe soll nicht an Fenstergröße angepasst werden? dulfried 4 4.081 30.08.2017 14:43
Letzter Beitrag: Appa
  FP - Elemente an Fenstergröße anpassen funktioniert irregulär Lucki 1 2.909 15.01.2014 08:49
Letzter Beitrag: GerdW
  Problem mit Datenerfassung unter Win7 64bit mit LV11 32bit MädMäxxx 6 5.406 07.03.2013 20:56
Letzter Beitrag: MädMäxxx
Question Element an Fenstergröße anpassen - Subpanel bubbl 1 4.378 16.02.2013 13:34
Letzter Beitrag: bubbl
  Fenstergröße einstellen Hasenfuss 13 13.655 22.01.2013 13:18
Letzter Beitrag: Hasenfuss
  Hohe Prozessorauslastung nach Festlegen von Fenstergröße/-Position Soean 22 15.811 13.06.2012 14:42
Letzter Beitrag: Soean

Gehe zu: