AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Mainform verschleiern
Thema durchsuchen
Ansicht
Themen-Optionen

Mainform verschleiern

Ein Thema von Alfonso · begonnen am 15. Jan 2008 · letzter Beitrag vom 15. Jan 2008
Antwort Antwort
Seite 1 von 2  1 2      
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#1

Mainform verschleiern

  Alt 15. Jan 2008, 00:18
Ich möchte, dass während ein modales Fenster angezeigt wird, das Mainform grau verschleiert wird.

Meine Idee bisher ist: ich speichere in ein TImage das Mainformbild mit Mainform.GetFormImage. Dieses Bild wird verschleiert und über das gesamte Mainform gelegt.

Wenn das der richtige Ansatz ist: Wie verschleiere ich nun das Bild (so ähnlich wie man das jetzt auf vielen Webseiten sieht, wenn man ein popup öffnet).

Gibt es sonst einen anderen Ansatz?

Gruß
Alfonso
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Larsi

Registriert seit: 10. Feb 2007
2.262 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Mainform verschleiern

  Alt 15. Jan 2008, 07:09
du sagst einfach vor show modal color = clgrey
Ein Tag ohne Delphi ist ein verlorener Tag!

Homepage zu meinem neuen Programm: StreamZ
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Mainform verschleiern

  Alt 15. Jan 2008, 07:35
Zitat von Larsi:
du sagst einfach vor show modal color = clgrey
Was soll das denn auswirken? Damit setze ich doch die Farbe der Canvas des Formulars auf grau. Alle Elemente die darauf sind, inkl. andere Icons bleiben in der Originalfarbe.

Anbei ein Test, wie ich es mir vorstelle. Die linke Hälfte ist original, die zweite Hälfte ausgegraut. Ich habe es mit Photoshop gemacht, in dem ich ein graues Rechteck mit einer Deckkraft von 60% rübergelegt habe.

Gruß
Alfonso
Miniaturansicht angehängter Grafiken
test_190.gif  
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Mainform verschleiern

  Alt 15. Jan 2008, 07:42
Man könnte links und rechts je einen Panel nehmen, der weiss ist. den eigentlichen Hintergrund der Form dunkel. Durch Erhöhung der Transparenz des Panels würden alle Komponenten dunkler.
Markus Kinzler
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Mainform verschleiern

  Alt 15. Jan 2008, 08:48
Zitat von mkinzler:
Man könnte links und rechts je einen Panel nehmen, der weiss ist. den eigentlichen Hintergrund der Form dunkel. Durch Erhöhung der Transparenz des Panels würden alle Komponenten dunkler.
Wenn du mir jetzt noch sagst, mit welcher Eigenschaft des TPanel ich die Transparenz des Panels festlege ist dann alles klar.
Ein Formular hat die Eigenschaft Alphablend, nicht jedoch ein TPanel.

Übrigens, ich will nicht zwei Hälften machen, sondern alles Grau. Die Hälften sind nur im Beispiel, um zu verdeutlichen was ich will.

Gruß
Alfonso
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Mainform verschleiern

  Alt 15. Jan 2008, 08:49
Zitat von Alfonso:
Ich möchte, dass während ein modales Fenster angezeigt wird, das Mainform grau verschleiert wird.
Das geht aber ganz klar am Windows-Standard vorbei.
Man erkennt ein inaktives Fenster doch daran, dass die Titelzeile eine andere Farbe hat.
Und bei einem modalen Fenster kann man im Hauptfenster dann eh nichts mehr machen.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Mainform verschleiern

  Alt 15. Jan 2008, 08:55
Zitat von RavenIV:
Das geht aber ganz klar am Windows-Standard vorbei.
Ja, das weis ich! Aber nenne mir ein Programm, dass sich heute am Windows-Standars hält. Nicht mal Microsoft hält sich mit dem neuen Office am Standard (keine Menüs). Viele Programme haben inzwischen Skins, die dem Programm so aussehen lassen, als wären sie nicht von dieser "Windows"-Welt.

Also, warum nicht mal was neues probieren. Im Web hat sich das etabliert, dass man bei Popups den Hintergrund ausgraut. Warum den nicht auch bei Programme?
Gruß
Alfonso
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Mainform verschleiern

  Alt 15. Jan 2008, 09:00
http://www.delphipraxis.net/internal...t.php?p=216731
Markus Kinzler
  Mit Zitat antworten Zitat
Alfonso

Registriert seit: 10. Jan 2006
250 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Mainform verschleiern

  Alt 15. Jan 2008, 09:31
So, jetzt bin ich selber fündig geworden und will die Antwort nicht vorenthalten, falls jemand die gleiche Lösung sucht.

Ich habe in meinem Programm die Funktion "Alphablendrect" aus DP aufgenommen.
Dann habe ich ein kleines unsichtbares Panel auf mein Mainform gesetzt, auf dem ein TImage mit align:=alclient platziert ist (damit ich eine Canvas habe).
Wenn ich den Schleier haben will, rufe ich folgendes auf:
Delphi-Quellcode:
 Panel1.Align:=alclient;
 Image2.Picture.Bitmap:=self.GetFormImage;
 AlphaBlendRect(Image2.Canvas,panel1.ClientRect,clblack,70);
 Panel1.Show;
Dadurch erreiche ich den Grauschleier. Will ich diesen entfernen, rufe ich nun nur folgendes auf:
Panel1.Hide; Gruß
Alfonso
Alfonso
Seit Turbo Pascal 3.0 dabei!
Ewiger Pascal Fan!
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#10

Re: Mainform verschleiern

  Alt 15. Jan 2008, 09:38
Zitat von Alfonso:
Zitat von RavenIV:
Das geht aber ganz klar am Windows-Standard vorbei.
Ja, das weis ich! Aber nenne mir ein Programm, dass sich heute am Windows-Standars hält. Nicht mal Microsoft hält sich mit dem neuen Office am Standard (keine Menüs). Viele Programme haben inzwischen Skins, die dem Programm so aussehen lassen, als wären sie nicht von dieser "Windows"-Welt.
Das neue Office hält sich an den Vista-Standard.
Da gibt es die sogenannten "Ribbons".

Und muss man denn alles schlechte von anderen Programmen nachmachen?

Software, die bei uns entwickelt wird, hält sich an den Windows-Standard.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 05:44 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