AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Panel und XPManifest

Ein Thema von Igotcha · begonnen am 3. Dez 2005 · letzter Beitrag vom 3. Dez 2005
Antwort Antwort
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#1

Panel und XPManifest

  Alt 3. Dez 2005, 01:36
Hallo zusammen,

ich erstelle dynamisch ein TPanel, was bisher auch problemlos dargestellt wurde. Jetzt dachte ich mir, ich nutze noch das XPManifest, um die Darstellung meines Programms etwas aufzupeppen.

Leider entsteht dabei folgender Effekt (s. Anhang).

Erstellt wird das Panel eines anzuzeigenden MDI-Childs wie folgt:

Delphi-Quellcode:
    FCaptionPanel:=aVisible;
    if FCaptionPanel= true then
    begin
      PTitle:=TPanel.Create(Self);
      PTitle.Color:=RGB(128,128,128);
      PTitle.Parent:=Self;
      PTitle.Height:=25;
      PTitle.Align:=altop;
      PTitle.Alignment:=taLeftJustify;
      PTitle.BorderWidth:=4;
      PTitle.Caption:=Self.Caption;
      PTitle.Font.Color:=clWhite;
      PTitle.ShowHint:=true;
    end;
Hat evtl. jemand eine Idee, woran das liegen kann?

Gruß Igotcha
Miniaturansicht angehängter Grafiken
xpmanproblem_523.jpg  
  Mit Zitat antworten Zitat
Elvis

Registriert seit: 25. Nov 2005
Ort: München
1.909 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Panel und XPManifest

  Alt 3. Dez 2005, 01:58
Kopiere mal deinen Thread titel in die DP Suche und schaue dir den thread aus den Bug reports an. Ich denke das dürfte es treffen.
Robert Giesecke
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Panel und XPManifest

  Alt 3. Dez 2005, 02:19
Danke, das war ein sehr guter Hinweis und hat mein o.g. Problem gelöst

Nur...

Der obige Code war ein Ausschnitt, denn es fehlen noch die beiden Speedbuttons (s. Bild oben).

Delphi-Quellcode:
      SBMaximize:=TSpeedButton.Create(Self);
      SBMaximize.Parent:=PTitle;
      SBMaximize.Width:=20;
      SBMaximize.Height:=17;
      SBMaximize.Left:=PTitle.Width-48;
      SBMaximize.Top:=4;
      SBMaximize.Flat:=true;
      SBMaximize.Hint:=_('maximieren / minimieren');
      SBMaximize.Anchors:=[akTop, akRight];
      SBMaximize.OnClick:=SBMaximizeClick;
      xForm.XBASILMODWIN.GetBitmap(1,SBMaximize.Glyph);
Diese zeigen jetzt beim Mouseover leider nicht das grau des Panels, sondern werden weiß. Und dies passiert auch, wenn ich die Transparency-Property auf false stelle und sogar den Hintergrund des Bildes mit grau ausfülle.

Was machen wir denn jetzt?

Gruß Igotcha
Miniaturansicht angehängter Grafiken
speedbuttonproblem_632.jpg  
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#4

Re: Panel und XPManifest

  Alt 3. Dez 2005, 11:00
Bei Speedbuttons tritt dieses Problem eben auf. Versuchs mal mit BitBtns.
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
tigerman33

Registriert seit: 30. Jul 2005
Ort: München
423 Beiträge
 
Delphi 2005 Professional
 
#5

Re: Panel und XPManifest

  Alt 3. Dez 2005, 11:33
Wobei ich sagen muss, ich finde das sieht recht schick aus mit dem weiß.
Ist aber natürlich deine Sache...
Christian
Der Computer hilft mir, Probleme zu lösen, die ich ohne Computer nicht hätte.
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#6

Re: Panel und XPManifest

  Alt 3. Dez 2005, 11:41
Hier in der dp findest du ein Tutorial von mirage228 zur Erstellung eines eigenes XPMainfests in Form einer Res-Datei, dann sollte es keine Probleme mehr geben.
  Mit Zitat antworten Zitat
horst

Registriert seit: 1. Jul 2003
347 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Panel und XPManifest

  Alt 3. Dez 2005, 11:55
Das sollte funktionieren..

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
  for i:=0 to ComponentCount-1 do
    if Components[i] is TPanel then (Components[i] as TPanel).ParentBackground:=false;
end;
Viele Grüße
Horst
  Mit Zitat antworten Zitat
Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#8

Re: Panel und XPManifest

  Alt 3. Dez 2005, 17:40
Zitat von horst:
Das sollte funktionieren..
Ja, das mit dem Panel funktioniert ja jetzt auch, nur die Speedbuttons sahen sehr chic vorher aus, mit XPManifest haben sie jetzt leider einen weissen Hintergrund beim Mouseover, anstatt der Farbe des grauen Panels.

Aber ich lasse das jetzt erstmal so, wenn es immerhin einen User hier gibt, der das recht hübsch findet

Danke und Gruß
Igotcha
  Mit Zitat antworten Zitat
Nils_13

Registriert seit: 15. Nov 2004
2.647 Beiträge
 
#9

Re: Panel und XPManifest

  Alt 3. Dez 2005, 17:48
Zitat von Igotcha:
Zitat von horst:
Das sollte funktionieren..
Ja, das mit dem Panel funktioniert ja jetzt auch, nur die Speedbuttons sahen sehr chic vorher aus, mit XPManifest haben sie jetzt leider einen weissen Hintergrund beim Mouseover, anstatt der Farbe des grauen Panels.

Aber ich lasse das jetzt erstmal so, wenn es immerhin einen User hier gibt, der das recht hübsch findet

Danke und Gruß
Igotcha
Das geht nicht anders, das ist sogar normal.
  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 16:06 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