AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Form/Komponenten mit halbtransparenter Oberfläche überdecken
Thema durchsuchen
Ansicht
Themen-Optionen

Form/Komponenten mit halbtransparenter Oberfläche überdecken

Ein Thema von s.h.a.r.k · begonnen am 6. Mär 2007 · letzter Beitrag vom 9. Mär 2007
Antwort Antwort
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

Form/Komponenten mit halbtransparenter Oberfläche überdecken

  Alt 6. Mär 2007, 14:55
Hallo,

und zwar habe ich zurzeit folgende Idee: Ich habe eine Form mit der ich Daten bearbeiten kann. Dort gibt es mehrere Eingabefelder etc. Nun ist es so, dass nicht immer Daten zur Bearbeitung geladen sind. Ich will auch nicht jede Komponente nun disablen, sondern hab da eine andere Idee: eine Oberfläche (in welcher Art und weise zunächst auch immer), welche halbtransparent ist, darüber zu legen, d.h. dass ich praktisch über den Eingabeteil ein Viereck legen will, das diesen Bereich abdunkelt und somit keine Komponente anklickbar bzw. nutzbar ist. (die Tab-Taste hier mal außen vorgelassen, da werde ich separat unterbinden)

Soweit so gut: ich habe bisher daran gedacht eine PNG-Datei zu erstellen, die halbtransparent ist und ich dann über den Eingabebereich mit einer TImage-Komponente legen -> Pustekuchen... Das TImage ist leider immer im Hintergrund und ich kann es einfach nicht vor die anderen Komponenten bringen. Ein Panel oder sonstige andere Komponenten gehen leider auch nicht, bzw. ich habe bisher leider nix gefunden (im Forum ebenfalls nix).
Nun ist es so, dass ich auch die Idee hatte eine zweite Form aufzumachen, dort mit dem Alpha-Dings (genauer Name gerade leider entfallen ) arbeite und das dann darüber lege. Das Problem hierbei ist, dass ich die Form, dann immer an die richtige Position rücken muss und immer vor der Hauptform, aber nicht vor allen anderen Fenstern halten muss. Und irgendwie bekomme ich das nicht gebacken.

Ich hoffe, ihr versteht was ich meine, sonst hänge ich noch einen Screenshot an (hab gerade leider keinen da und ich arbeite an einem anderen Rechner).

Mit freundlichen Grüßen
Pfäffle Armin
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#2

Re: Form/Komponenten mit halbtransparenter Oberfläche überde

  Alt 8. Mär 2007, 13:09
*push*
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

Re: Form/Komponenten mit halbtransparenter Oberfläche überde

  Alt 8. Mär 2007, 13:28
Sowas hab ich auch mal gesucht und keinen Weg gefunden,
aber wenn du mal andersrum denkst, dann gibt's 'ne Lösung.

Es war zwar recht einfach möglich ein Formular nach vorne zu bekommen, nur bekam es dann oftmals auch den Focus mit, oder ist nach ganz vorn gewandert


Also warum dann nicht ein Formular hinter das andere zu setzen?


Bei mir sieht der Code dann so aus und befindet sich in der Form, welche oben ist:
Delphi-Quellcode:
SetWindowPos(MainForm.Handle, Handle, 0, 0, 0, 0,
  SWP_NOMOVE or SWP_NOSIZE or SWP_NOACTIVATE or SWP_NOOWNERZORDER);
Dieses muß dann halt immer aufgerufen werden, wenn z.B. die Form nicht hinter der Gewünschten liegt.


Hier im Forum suchenhSync du wirst merken die ProgressForms sind vor der MainForm,
wobei ich da eher den Wunsch hatte, daß die MainForm bediehnbar bleibt,
also ShowModal nicht ging



[add]
Aber eigentlich wäre es besser, wenn du solche Tricks in diesem Zusammenhang läßt und lieber selber Komponenten erstellst, welche sowas können ... also z.B. selberzeichnen
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Form/Komponenten mit halbtransparenter Oberfläche überde

  Alt 8. Mär 2007, 13:46
du kannst auch alle Editfelder auf ein Panel legen und dieses Panel dann disablen. Somit kommt man auch nicht mehr an eines der Edits ran. Zu deiner halbtransparenten Oberfläche: Das hatten wir schon des öfteren (transparente Panels) und eine wirklich gute Lösung wurde nie gefunden.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#5

Re: Form/Komponenten mit halbtransparenter Oberfläche überde

  Alt 9. Mär 2007, 11:12
Die Idee mit dem Panel kenne ich schon, mag ich aber nicht wirklich, da der Benutzer dabei nicht auf Anhieb sieht, dass die Eingabebereiche für Ihn gesperrt bzw. nicht fokusiertbar sind.

Bzgl dem Effekt: Bei immer mehr Websiten finde ich diese Idee, den Benutzer sinnvoll zu leiten ohne mehrere Zwischenseiten einzublenden. Microsoft macht das im Moment eigentlich recht geschickt, muss ich zugeben. Und eben diesen Effekt wollte ich auch nutzen, da er sehr intuitiv und selbsterklärend ist! (meiner Meinung nach)
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz