Nicht anklickbare Form
-
Wie bereits geschrieben, kann ich bei mir durch die Form hindurch klicken und Verknüpfungen etc. normal starten.
BCB Version 6 Enterprise, Windows XP Pro//Edit
Versuch das ganze mal an einem statisch erstelltem (also im Objectinspector) Formular, nicht an einem dynamischen und prüfe mal, ob es dann funktioniert.
-
Vielen Dank für dein Vorschlag!
Jetzt wo ich die Form nicht mehr dynamisch erstellen lasse, klappt es komischer Weise!
-
Kurze Frage,
unter welchen Punkt im Objektinspektor stelle ich ein, das die Form statisch erstellt wird? Finde nämlich nichts mit Statisch oder DynamischHabe Embarcadero RAD Studio 2010.
-
Hallo,
Das kann man nirgends einstellen. Formen kann man nicht statisch erstellen.
Das war hier in diesem Thread nur eine ungenaue Ausdrucksweise. Was hier gemeint wurde war ob die Form automatisch am Anfang oder per Hand dann wenn sie gebraucht wird erstellt wird.
-
Aiaiai
Kann mir das einer nochmal genau erklären, wie genau es s geht, das nur der Text von Label auf den Bildschirm angezeigt wird und man durch diesen Text durch klicken kann?
-
Eles schrieb:
...und man durch diesen Text durch klicken kann?
Darum ging es nicht. Gemeint war der transparente (unsichtbare) Bereich des Labels bzw. des Forms.
-
Ach so, mein Fehler.
Aber wie kann ich machen, dass man durch den angezeigten Text durch klicken kann?
-
In Kurzform gesagt ermittelst du das Fenster-Handle des darunterliegenden Fensters und leitest das Klick-Event (oder Message) dorthin.
Wär was fürs Win-Api-Forum.
-
Habe mich in WinAPI mal umgeschaut und nur ein Tip mit WS_EX_LAYERED bekommen. Darauf hin habe ich bei OnCreate
SetWindowLong(Form1->Handle, GWL_EXSTYLE,GetWindowLong(Form1->Handle, GWL_EXSTYLE) | WS_EX_LAYERED | WS_EX_TRANSPARENT);
eingetragen. Funktioniert aber nur halb, man kann zwar nun durch klicken, allerdings kann man nichts mehr in der Form sehen außer den blanken Rand.
Wenn ich WS_EX_TRANSPARENT weg lasse sieht man weiterhin nur den Rand und kann nicht durch klicken. Wenn ich WS_EX_LAYERED weg lasse, dann ist alles sichtbar aber man auch nicht durch klicken.
Einer vielleicht eine Idee wie man es hin bekommt das man alles Sieht aber trotzdem durch klicken kann?
-
Ahh habe es hin bekommen _
Habe einfach noch eine Zeile hinzugefügt:
SetWindowLong(Form1->Handle, GWL_EXSTYLE,GetWindowLong(Form1->Handle, GWL_EXSTYLE) | WS_EX_LAYERED | WS_EX_TRANSPARENT); SetWindowLong(Form1->Handle, GWL_HWNDPARENT, 0);