Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Fenstergrösse in VEE / VEERun - Mainpanel
15.12.2015, 09:23 (Dieser Beitrag wurde zuletzt bearbeitet: 22.12.2015 09:57 von detlef.)
Beitrag: #1
Fenstergrösse in VEE / VEERun - Mainpanel
Wenn man Vee (oder die VEERun) über eine Batch Datei startet (Kommandozeile), dann kann man mit dem Parameter "-geometry 695X835+0+0" die Göße und die Position des VEE Fensters angeben.
In Vee selbst kann mann mit der Funktion "Maximize" das VEE Fenster auf den gesamten Bildschirm vergößern.

Gibt ein innerhalb von VEE eine Möglichkeit die Fenstergröße anzugeben? Also die Breite, Höhe, PosX, PosY des VEE Fensters?

Damit meine ich nicht die Größe von Panels, sonden den Fensterramhen von VEE (VEERun) selbst also wie mit dem Parameter "-geometry..." aus der Komandozeile.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
17.12.2015, 14:09
Beitrag: #2
RE: Fenstergrösse in VEE / VEERun
Dieses Problem hatte ich auch mal....die infos von der Kommandozeile kann man in VEE auslesen, steht in der Hilfe.
Die Sache mit dem Main panel war aber nicht so einfach, ich muss mal wieder suchen, wie es konkret gemacht wurde, es ging aber glaube ich nur ueber eine Windows dll oder eine Dotnet Funktion. Man musste den Handle des VEE Fensters herausfinden, und dann konnte man die Groesse einstellen..aber wie gesagt, ich muss wieder suchen.
Ich hatte das damals eingefuehrt, um auf verschiedenen Rechnern in verschiedenen Aufloesungen zu arbeiten, war dann alles in einem Array abgespeichert, und jeh nach Rechner wurden dann verschiedene Main und SUb panels benutzt, in Protrait oder Landscape mode...

Aber schlussendlich hab ich da fuer das MAin panel immer MAXimize benutzt- ueber die Verkleinern Fkt. kann man dann ja per Maus die Groesse einstellen fuer das minimize...aber wieso moechtest due kleiner als MAX werden fuer dein Main Panel?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2015, 10:02
Beitrag: #3
RE: Fenstergrösse in VEE / VEERun
Wie ich an die Informationen / Selbstdefinierten Parameter aus der Kommandozeile komme habe ich bereits gelöst. Das ist nicht mein Problem.

Im Beispiel "ProgrammaticProertyDemo.vee" wird gezeigt, wie z.B ein Display in der Größe veränderbar ist.
Auch das ändern der Größe von Panels ist nicht mein Problem.

Ich möchte ähnlich der "Maximize" Funktion innerhalb von VEE das VEE (VXE)-Fenster in Größe und Position so positionieren, wie es mit dem Komandozeilenparameter "-geometry...." möglich ist.

Die "maximize" Funktion von VEE ist für mich nicht sinnvoll, da neben dem VEE /Vxe) Fenster Excel von VEE aus geöffnet wird um dort Daten rein zu schreiben.
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
18.12.2015, 19:42
Beitrag: #4
RE: Fenstergrösse in VEE / VEERun
Brauchst du variable Groessen, oder nur 2 ?
wenn nur 2, dann wuerde ich das Main Panel in der Groesse definieren ( geht ueber Size Menu links oben, wenn das Main ein Panel hat).
Das waere dann die Standardgroesse. Die kannst du dann per programm maximieren, minimieren oder sonstwas. Beispiel ist in den Examples unter contrib...
Ansonsten wird es schwieriger, da muss ich mich auch durch die DOTnet syntax wuehlen, oder die User32.dll bemuehen- winstyle halt.
Das mit dem Main Panel Handle hWnd ist ja noch schoen in den examples mit drinne, die aktuelle Zuweisung der Groesse des Main Fensters muss man halt suchen bei MS. Auf die Schnelle hab ich nix gefunden- bin mir aber sicher, dass das mal Thema in der VRF war.
Ich werde da noch mal nachfragen...

Ansonsten, oben ...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
21.12.2015, 07:54 (Dieser Beitrag wurde zuletzt bearbeitet: 21.12.2015 08:19 von detlef.)
Beitrag: #5
RE: Fenstergrösse in VEE / VEERun

.zip  b1.zip (Größe: 9,63 KB / Downloads: 1)
sendkeys

Okay, etwas gefunden mit Hilfe der VRF Mailingliste. Hatte ich auch bereits in meinem Programmfundus, allerdings hatte ich das unter Panels abgespeichert und nicht unter Grafik...da kann ich dann lange falsch suchen..

Aber zuallererst sieht es bei dir so aus, dass du dein Fenster auf die linke Seite bekommen moechtest, und dein Excel Fenster auf die rechte Seite. Dazu gibt es eine Windows Funktion, ab win7 glaube ich.
Windows Taste und Pfeil Links macht das aktive Fenster nach Links, Windows Taste und Pfeil rechts macht das aktive Fenster nach Rechts. Kannst du mit SENDKEYS auch in VEE benutzen..sollte gehen, hab ich aber noch nicht probiert. Siehe oben....

Tiefer in die Materie geht es dann mit dem "Windowplay" Beispiel. Dies tut in den alten VEE Versionen, die noch HP Vee oder AgilentVEE hiessen. Dort wird nach dem Fensternamen gesucht und dieser windowshandle "hWnd" gesucht.

Fuer die neuen VEE Versionen sollte man dies im Stile von dotnet ueber die mscorlib und system machen lassen:

System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle.ToInt32()
Um an die Handlenummer des VEE Programmes zu kommen.

Wie das alles nun mit der Neuen DOTNET Syntax geht und nicht mit dem alten system32.dll, waere mal interessant herauszufinden.


Angehängte Datei(en)
.zip  panel.zip (Größe: 595,42 KB / Downloads: 2)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.12.2015, 09:49
Beitrag: #6
RE: Fenstergrösse in VEE / VEERun
So,hier mal was zum Spielen fuer die neueren Versionen:


Angehängte Datei(en)
.vee  WindowPlayVee9.vee (Größe: 15,57 KB / Downloads: 1)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.12.2015, 06:53
Beitrag: #7
RE: Fenstergrösse in VEE / VEERun - Mainpanel
Ich habe in diesem Beispiel die Funktion in der Formular Box auskommentiert durch //....
die Dotnet-Funktion laesst sich aber auch in der Formular-Box benutzen, einfach den Kommentarstring // weg nehmen und ein Semikolon am Ende einfuegen, dann kann man diese anderen Dotnet-Boxen komplett weglassen.
Hatte mich gewundert, dass das vorher nicht in der Formualt Box funktionierte mit der Handle-Zuweisung... hatte aber nur das Semikon am Ende der Funktion vergessen...
Also:
Whdl = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle.ToInt32();
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
23.12.2015, 09:51
Beitrag: #8
RE: Fenstergrösse in VEE / VEERun - Mainpanel
Servus und Danke für die vielen Anregungen.

Wenn ich das auf die Kürze richtig verstehe, dann brauch ich die WindowPlayVee9 im Formula bei MoveWindow(hWnd, 0, 0, rc[2], rc[3], 1); statt ... rc[2], rc[3]... nur meine gewünschten Bildschirmkoordinaten einsetzen. Dann funktioniert das auch schon. Die anderen Funktionen werde ich mir noch anschauen.

Nochmals vielen Dank dafür, genau das was ich für mein VEE Programm gesucht habe und selbst nicht geschafft hätte.

Wünsche Dir und allen anderen hier ein frohes Weihnachtsfest und einen guten Rusch ins neue Jahr.

Gruß MaxSchmidtFan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 11:33 (Dieser Beitrag wurde zuletzt bearbeitet: 05.01.2016 11:37 von detlef.)
Beitrag: #9
RE: Fenstergrösse in VEE / VEERun - Mainpanel
So, hab mal die VEE Hilfe durchstoebert und die Sache mit den Main.xx in einer Formula-Box ausprobiert.
Vielleicht tut es ja bei dir bei der allerersten Initialisierung. Am einfachsten aber duerfte die Einstellung der "Size" Sache in der VEE developer sein.
Die Sache mit den Main properties tut naemlich nicht so richtig, hier als Beispiel in vee und vxe....


das .vee loeschen, um die .vxe zu erhalten, sonst kann ich das hier nicht hochladen.


Angehängte Datei(en)
.vee  MainPanelSize.vee (Größe: 7,8 KB / Downloads: 1)
.vee  MainPanelSize.vxe.vee (Größe: 1,26 KB / Downloads: 1)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
05.01.2016, 12:36
Beitrag: #10
RE: Fenstergrösse in VEE / VEERun - Mainpanel
Servus.

Zuerst Danke für den Hinweis.
Die Größe vom Mainpanel mit "Main.Size" habe ich über die VEE Hilfe selbst herausgefunden und umgesetzt. Auch das verschieben mit MoveWindow(hWnd.... klappt hervorragend. Die Funktion von Dir (.Net bzw. user32.dll) habe ich für meine Bedürfnisse angepasst.

Vielen Dank für die Unterstützung.
Gruß MaxSchmidtFan
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Gehe zu:




Partnerforen: LabVIEWForum.de| DIAdem-Forum.de| Machine-Vision-Forum.de| goMatlab.de| VEEforum.de