LabVIEWForum.de
PopUp-Hintergrund Transparent - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: PopUp-Hintergrund Transparent (/Thread-PopUp-Hintergrund-Transparent)



PopUp-Hintergrund Transparent - Wulfi - 05.12.2008 14:33

Hi,
ich habe folgendes Problem:
Mein HauptVI ruft ein SubVi auf und es wird ein Pop-Up Fenster angezeigt. Hier müssen Daten eingeben werden und es kann nur mit OK Beendet werden...
So weit so gut, mein Problem ist jetzt das ich gerne den Hintergrund vom Pop up transparent hätte und alle anderen Grafik & Eingabe Elemente nur 20& durchsichtig. Wie bekomme ich nur den Hintergrund duchsichtig? Also statt Frabe weiß für dee Hintergrund Farbe durchsichtig...

Besten dank


PopUp-Hintergrund Transparent - thomas.sandrisser - 05.12.2008 14:57

Das geht direkt leider nicht (zumindest nicht mit LabVIEW internen mitteln).

Es gibt in windows ne DLL die du missbrauchen kannst um regionen zu bestimmen die transparent sein sollen:

Von der Windows GDI musst du die Funktion createrectrgn oder createdellipticrgn aufrufen.
die input parameter sind ziemlich simple: top left und bottom right. das ist alles. alles ausserhalb dieser region ist transparent. Sofern du das fenster nicht verschieben willst, musst du dir auch keine gedanken um das neu zeichnen machen.
Danach ruf einmal die funktion SetWindowRgn aus der user32.dll auf, damit das fenster neu gezeichnet wird. Und danach zerstoer das handle von der gdi mittels DeleteObject.


die infos zu den funktionen findest du auf der msdn seite.


PopUp-Hintergrund Transparent - Wulfi - 05.12.2008 15:20

Danke für die schnelle antwort.
Das Problem ist nur das die Grenzen Rund sind...
Das heißt es hilft auch dieser kleine Workaround nicht, oder?


PopUp-Hintergrund Transparent - thomas.sandrisser - 05.12.2008 15:40

doch natuerlich.
dafuer ist die elliptic function gedacht.

setz das rect gleich an aber nimm elliptic.


PopUp-Hintergrund Transparent - Wulfi - 05.12.2008 15:45

Ahh, gut.
Werd ich dann mal am We oder Montag auf der Arbeit mal testen...
Danke