AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi TProgressBar & Marquee mit Classic Theme in D2009 (VCL Bug)
Thema durchsuchen
Ansicht
Themen-Optionen

TProgressBar & Marquee mit Classic Theme in D2009 (VCL Bug)

Ein Thema von Assertor · begonnen am 25. Nov 2008 · letzter Beitrag vom 30. Nov 2008
Antwort Antwort
Seite 1 von 2  1 2      
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#1

TProgressBar & Marquee mit Classic Theme in D2009 (VCL B

  Alt 25. Nov 2008, 12:33
Hi,

ich bin grad über einen kleinen Bug gestolpert:

Wenn ich einen TProgressBar mit Marquee in D2009 über Classic Themes anzeige (oder per AppCompat für die Datei die visuellen Designs deaktiviere), bleibt der ProgressBar leer.

Ist das ein neuer VCL Bug? Im QC kann ich dazu für die Release und Update 1 nichts finden.

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 12:57
Das ist kein VCL Bug, sondern PBS_MARQUEE funktioniert nur mit visuellen Designs.
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#3

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:00
Hi Union,

Zitat von Union:
Das ist kein VCL Bug, sondern PBS_MARQUEE funktioniert nur mit visuellen Designs.
Danke für Deine Antwort, aber bist Du sicher, das stimmt? Im MSDN hatte ich schon nachgesehen - und Comctl32.dll version 6 ist ja in Vista unterstützt. Der Marquee ist imho auch unterstützt im Classic Theme.

Ich teste das jetzt mal schnell mit D2006. Mal sehen, ob ich recht hab.

Gruß Assertor

P.S.: Korrektes Manifest ist natürlich dabei.
Frederik
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:04
Ich habe zum Test mal die D7 Version der Progressbar komplett dupliziert und in CreateParams ein "OR PBS_MARQUEE" eingefügt. Mit XP Manifest gehts, ohne bleibt die Prograssbar leer. Und wenn MS extra schreibt, dass es ohne NICHT geht, wieso sollte es dann trotzdem funktionieren... vielleicht mit dem nächsten SP

Im schlimmsten Fall programmierst Du Dir das PBS_MARQUEE eben selber (z.B. mit einem Timer).
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#5

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:12
Hi,

Zitat von Union:
Mit XP Manifest gehts, ohne bleibt die Prograssbar leer. Und wenn MS extra schreibt, dass es ohne NICHT geht, wieso sollte es dann trotzdem funktionieren... vielleicht mit dem nächsten SP
Zitat von Assertor:
P.S.: Korrektes Manifest ist natürlich dabei.


Zitat von Union:
Das ist kein VCL Bug, sondern PBS_MARQUEE funktioniert nur mit visuellen Designs.
Falsch, da steht ComCtrls 6 - nichts von visuellen Designs oder Classic Theme.

Gerade übrigens getestet: Geht mit D2006 & Vista & Classic Theme (per PBS_MARQUEE).

Kann jemand mit D2009 mal bitte kurz testen, ob es bei ihm geht?

Gruß Assertor

Edit: Union, es geht nicht darum, wann und wie es geht - das weiß ich Sondern, ob es bei D2009 geht oder hier ein Bug vorliegt. War vielleicht unklar formuliert.
Frederik
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:19
Kannst Du noch mal genau die Einsatzbedingungen beschreiben? Ich kann nur unter XP folgendes testen (Vista ist bei uns nicht zur Produktion freigegeben):
* D7 mit XP-Manifest (Komponente XPMan) und ohne
* D2009 mit XP-Manifest (Projektoptionen->Anwendung->Laufzeit Themes aktivieren) und ohne
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von divBy0
divBy0

Registriert seit: 4. Mär 2007
Ort: Sponheim
1.021 Beiträge
 
Delphi XE2 Professional
 
#7

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:21
Bau doch mal ein kleines Demo zusammen, was genau das macht, was du möchtest bzw. was nicht geht.

Heute Abend kann ich das mit D2009 und Vista testen.
Marc
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die 10. summt die Melodie von Tetris... | Wenn das die Lösung ist, dann hätte ich gerne mein Problem zurück! | engbarth.es
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#8

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:27
Hi Union,

Zitat von Union:
Kannst Du noch mal genau die Einsatzbedingungen beschreiben? Ich kann nur unter XP folgendes testen (Vista ist bei uns nicht zur Produktion freigegeben):
Verständlich, bin ja auch dankbar für die Mühe

Zitat von Union:
* D7 mit XP-Manifest (Komponente XPMan) und ohne
* D2009 mit XP-Manifest (Projektoptionen->Anwendung->Laufzeit Themes aktivieren) und ohne
Nein, daher kommt also das Mißverständnis

Delphi Einstellungen (fix):
  • D7/D2006 mit XP-Manifest
  • D2009 mit XP-Manifest

Dabei wird der ProgressBar bei D2006 über PBS_SETMARQUEE und unter D2009 mit der neuen VCL Style-Option auf Marquee gestellt.

Test case für ProgressBar mit Marquee:
  • Vista mit Classic Theme (das klassische Design nennt sich in der engl. Version dort so)
  • Vista mit Aero Theme

Ergebnissatz für D2006:
  • Vista mit Classic Theme: Marquee
  • Vista mit Aero Theme: Marquee

Ergebnissatz für D2009 (VCL Marquee Option):
  • Vista mit Classic Theme: Kein Marquee
  • Vista mit Aero Theme: Marquee

Ich habe jetzt auch mal Non-VCL per PBS_SETMARQUEE unter D2009 das Ergebnis geprüft, leider gibt es dort auch ein Problem - also muß es mit den Änderungen an der TProgressBar zusammenhängen:

Ergebnissatz für D2009 (PBS_SETMARQUEE):
  • Vista mit Classic Theme: Kein Marquee, Balken läuft aber ca. 5-10% an, dann ändert sich nichts mehr
  • Vista mit Aero Theme: Marquee

Gruß Assertor
Frederik
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:36
Liegt es vielleicht hierdran:
Delphi-Quellcode:
------------------------------+
                              |
if (FStyle = pbstMarquee) and ThemeServices.ThemesEnabled and CheckWin32Version(5, 1) then
    Style := Style or PBS_MARQUEE;
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

Re: Problem mit TProgressBar in D2009 mit Classic Themes

  Alt 25. Nov 2008, 13:39
Hallo Assertor,

auch bei Delphi 2007 verhalten wie bei D2006/D7.
  • Vista mit Classic Theme
  • Applikation mit Manifest und PBS-MARQUEE

Ergebnis für D2007:
  • Vista mit Classic Theme: Marquee
  • Vista mit Aero Theme: Marquee

Nur zur Info.

Gruß, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  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 06:57 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