AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Eigene Form u. DB-Komponenten -> XP-Style

Offene Frage von "Icemanemp"
Ein Thema von Icemanemp · begonnen am 28. Mai 2004 · letzter Beitrag vom 2. Jun 2004
Antwort Antwort
Seite 2 von 2     12
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#11

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:07
Zitat:
Leider funktioniert XP Theming per Manifestdatei nicht z.B. mit DBComboBox u.a. Komponenten! Das ist mein erste Problem gewesen, aber dann hab ich ja durch euer Forum die XP Thememanger Komponente von dem Entwickler des XP Manifest Komponente aus Delphi 7 gefunden! Mit der Manifestdatei ist eben nicht alles im XP Style vor allem viele DB Komponenten nicht...
Das liegt vermutlich daran, das in Delphi 5 (welches Du vermutlich verwendest) noch nicht alle Komponenten für XP-Theming-Kompatibel waren (Da XP erst nach D6 herauskam auch nicht verwunderlich). Die einfach Möglichkeit mit dem XP-Manifest teilt XP nur mit, das die Anwendung grundsätzlich gethemed gezeichnet werden soll. Und wenn manche DB-Controls in D5 sich nicht so registrieren das XP weiß das diese mit Themes gezeichnet werden soll, so bleiben diese halt "ungethemed". Der XP Themesmanger wird dieses unvermögen der Controls korrigieren.
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#12

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:20
Also irgendwie glaube ich, das wir hier aneinander vorbei reden!
Ich rede von dem XP ThemeManager von Mike Lischke. http://www.delphi-gems.com !!

Dieser bietet auch an das die DB-Komponenten im XP Style angezeigt werden...

Diese Komponenten habe ich gemeint. Und mich hat eben nur interessiert, wie und wann ich die Unit und das Objekt ThememangerDB von Mike Lischke in unser Form integrieren soll oder ob ich es in jedes unsere Komponenten integrieren soll? Mir geht es nur darum beim gesamtkompilat, das jede Nacht über Batchdateien ausgeführt wird am nächsten Morgen ne Version rauskommt, die im XP Style ist! Da ich nicht jede unsere ca. 85000 (ich glaub so viel warens) pas datein verändern möchte und die ThememangerDB KOMPONENTE!!! einfügen möchte! Von meine Lösungsansatz über das verändern der eigenen Form dürfte dies doch gelingen oder?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:35
In der Beschreibung steht:
Zitat:
...and modifies some controls to match the general theme look
D.h. ist einmal ein Themes-Manger aktiv, so wird vermutlich per Hooking die Registrierung/Zeichnenroutine modifiziert.

Und nachdem ich einen Schnelltest gemacht habe, reicht es das der Manager einmal im Programm aktiv ist. Am einfachst legt man den Manager auf das Hauptformular, da dieses während der ganzen Programmlaufzeit aktiv ist.
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#14

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:39
In unserem Produkt wäre das dann die Menüleiste, wo alle anderen Programm, die in DLLs kompiliert werden aufgreufen werden.

Geht das dann dort auch oder nicht? Ich meine das die Thememanger XP Komponente dann auch Programm die in einer DLL ausgelagert wurden umzuzeichnen. Da unsere Menüleiste das einzigste Programm ist das immer auf ist... oder ist es dann doch besser den ThemeManager in unser eigene Form (BForm) aufzunehmen?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#15

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:45
Wenn Deine Funktionaltät jeweils in einer DLL liegt dort immer nur ein Formular geöffnet wird, so schaut es schlecht aus. Du wirst dann vermutlich in jedes DLL-Formular eine Manager-Komponente legen müssen.
Der Manager der Exe hat keine Möglichkeit die Controls in der DLL zu Hooken.

Falls Deine DLL-Formular alle eine eigene Basis-Klasse (nicht TForm) haben, so könntest Du den Themes-Manager dort per Code im Konstrukor erzeugen lassen.
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#16

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:49
Genau das wollte ich hören!

Wenn ich die Thememanger Obejkte erzeuge und dann die XP-Theming Methode ausführe, werden dann auch eigene Komponenten, die auf VCL-Komponenten basiern bzw. abgeleitet sind auch gethemed? Oder Kann man das nicht einfach beantworten?

Wenn net dann probier ich es üer die Erzeugung de Objektes im Konstruktor unserer Form aus!

Danke
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#17

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 13:54
Wenn die Basis-Klasse gethemed wird und

- keine eigene Zeichenroutine verwendet wird
- Basisfunktionen für Fenstererzeugung nicht überschrieben werden

so wird auch die abgeleitete Klasse gethemed. (Gerade mit Ableitung von TBitBtn getestet)
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#18

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 31. Mai 2004, 16:05
OK dann werd ich das morgen auf der Arbeit testen!

Danke nochmal, falls es Probleme gibt dann schreib ich wieder hier rein...
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#19

Re: Eigene Form u. DB-Komponenten -> XP-Style

  Alt 2. Jun 2004, 17:01
Hab jetzt diesen Code...

Delphi-Quellcode:
    FThemeManager := TThemeManager.Create(Self);
    FThemeManagerDB := TThemeManagerDB.Create(Self);

    if Assigned(FThemeManager) then
    begin
      FThemeManager.ClearLists;
      FThemeManager.CollectForms;
    end;

    if Assigned(FThemeManagerDB) then
    begin
      FThemeManagerDB.ClearLists;
      FThemeManagerDB.CollectForms;
    end;
in unser BForm beim Create reingemacht, leider passiert gar nix! Beim Destroy wird auch alles ordentlich zerstört, aber beim Create passiert schon gar nix! Bitte helft mir ich weiss nicht warum das nix passiert?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 01:51 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