26.01.2010, 11:56
Beitrag #1
|
Ome
LVF-Gelegenheitsschreiber
Beiträge: 109
Registriert seit: Nov 2009
2011
2009
DE
12XXX
Deutschland
|
Dateidialog positionieren
Hallo,
ich habe folgendes Problem und komme nicht weiter. Ich hoffe, dass Ihr mir einen Tipp oder Ansatz geben könnt.
Wenn ich auf dem Frontpanel ein Pfadelement mit Suchschaltfläche platziere und im laufenden Betrieb auf die Suchschaltfläche klicke erscheint ein Dateidialog. Diesen möchte ich aus LabVIEW heraus beliebig verschieben bzw. den Ort an dem dieser erscheint vorher Angeben können.
Welche Möglichkeiten gibt es da? Ich habe keinen Eigenschaftsknoten gefunden der diese Möglichkeit bietet.
Gruße Ome
|
|
|
26.01.2010, 12:45
Beitrag #2
|
|
|
26.01.2010, 13:07
Beitrag #3
|
|
|
26.01.2010, 14:00
Beitrag #5
|
Ome
LVF-Gelegenheitsschreiber
Beiträge: 109
Registriert seit: Nov 2009
2011
2009
DE
12XXX
Deutschland
|
Dateidialog positionieren
Das ist blöd das es nicht einfach geht Das Problem ist das es kein „nice-2-have“ ist sondern notwendig, da neben dem Dialog auch die Bildschirmtastatur zum Einsatz kommt und sich beide Fenster sonst überschneiden.
Die Bildschirmtastatur starte ich zurzeit über Systembefehl ausführen.
Ich hatte gehofft, dass mittels .net auf den Windows-Dateidialog zugegriffen werden kann, so dass ich darüber Zugriff auf den Erscheinungsort. Nur leider kenne ich mich mit .net nicht wirklich aus.
Gruß Ome
|
|
|
26.01.2010, 14:19
Beitrag #6
|
|
|
26.01.2010, 14:26
Beitrag #7
|
|
|
26.01.2010, 15:07
Beitrag #8
|
SeBa
LVF-Guru
Beiträge: 2.025
Registriert seit: Oct 2008
09SP1 & 10 FDS
2008
DE
65xxx
Deutschland
|
Dateidialog positionieren
Link: MSDN
Rein theoretisch weiß ich wie man die Fensterposition setzt... wie man das aber dann per .NET in LV macht...
Es gibt auch noch die Möglichkeit per user32.dll die SetWindowPos() zu benutzen, aber... wie bekommt man das WindowHandle mit LV..?
Fragen über Fragen...
Gruß SeBa
Dieser Beitrag soll weder nützlich, informativ noch lesbar sein.
Er erhebt lediglich den Anspruch dort wo er ungenau ist, wenigstens eindeutig ungenau zu sein.
In Fällen größerer Abweichungen ist es immer der Leser, der sich geirrt hat.
Rette einen Baum!
Diesen Beitrag nur ausdrucken, wenn unbedingt nötig!
|
|
|
26.01.2010, 15:33
(Dieser Beitrag wurde zuletzt bearbeitet: 26.01.2010 15:34 von RoLe.)
Beitrag #9
|
RoLe
LVF-Guru
Beiträge: 1.236
Registriert seit: Jul 2007
-
1997
en
0
Schweiz
|
Dateidialog positionieren
' schrieb:Es gibt auch noch die Möglichkeit per user32.dll die SetWindowPos() zu benutzen, aber... wie bekommt man das WindowHandle mit LV..?
Bei NI.COM (und vermutlich auch hier im Forum) gibt es schon lange das LVWUTIL32.
Eine Sammlung von Windows-API Funktionen, die den WindowHandle, MoveWindow usw. für LabVIEW einlesen, mit einer eigenen DLL.
Ein .NET Paket habe ich noch nicht gesehen.
Im .NET gibt es diese Funktionen sicher auch.
Nur ein Dialog (+ Dialoge vom LV-Pfadelement) und die Bildschirmtastatur sind keine "normale" Fenster, da geht das nicht so einfach, wenn überhaupt.
Ich würde das alles mit LabVIEW machen. (Dann braucht es auch das LVWUTIL32 nicht)
Mit Suchen findest du eine Bildschirmtastatur die in LabVIEW erstellt wurde und den Pfaddialog kannst du auch selber machen. Da dann alles in LV ist, ist die Positionierung der einzelnen Fenster dann einfach(er).
.·´¯)--> Leben ist das, was dir passiert, wenn du eifrig dabei bist andere Pläne zu machen <--(¯`·.
|
|
|
| |