Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Problem mit eigene ProgressBar mit Marqueen (https://www.delphipraxis.net/113953-problem-mit-eigene-progressbar-mit-marqueen.html)

NickelM 17. Mai 2008 00:08


Problem mit eigene ProgressBar mit Marqueen
 
Hallo Leute

Habe mir gedacht ich schreibe mal eine TProgressBarEx mit dem Laufbalken Eigenschaft(siehe Bild)

Läuft auch alles Super, ich will aber, dass man zur laufzeit naürlich wenn mann wieder syNormal (Typ-Eigenschaft) setzt wieder normal wird.

Ich habe nur keine Blasen schiemer wie, da ich eigentlich net wirklich viel mit Win-API zutunhabe :gruebel:

hier der aufruf code dafür, denn ich vom forum habe.
Delphi-Quellcode:
const
  PBS_MARQUEE = $08;
  PBM_SETMARQUEE = WM_USER + 10;
var
  cs:LongInt;
begin
If not (csDesigning in ComponentState) and (Value = syLaufbalken) then
begin
  cs := GetWindowLong(Self.Handle, GWL_STYLE);
  SetWindowLong(Self.Handle, GWL_STYLE, cs Or PBS_MARQUEE);
  SendMessage(Self.Handle, PBM_SETMARQUEE, 1, FInterval); //FInterval ist die Geschwindigkeit habe ich festgestellt
  Self.DoubleBuffered := True;
end;
Habe es schon mit Wm_User für PBM_SETMARQUEE bei SendMessage versucht. Geschit nichts.
Wäre dankbar für eure Hilfe.

Die Muhkuh 17. Mai 2008 01:08

Re: Problem mit eigene ProgressBar mit Marqueen
 
Hi,

abgesehen davon, dass in deinem Beispiel ein end; fehlt, solltest Du es so wieder wegbekommen:


Delphi-Quellcode:
SetWindowLong(cs, GWL_STYLE, cs xor PBS_MARQUEE);

himitsu 17. Mai 2008 18:50

Re: Problem mit eigene ProgressBar mit Marqueen
 
XOR = umschalten
AND NOT = ausschalten
OR = anschalten

also es geht zwar, wenn es aktiviert ist, aber besser sollte es wohl so sein :angel:
Delphi-Quellcode:
cs := GetWindowLong(Self.Handle, GWL_STYLE);
SetWindowLong(Self.Handle, GWL_STYLE, cs and not PBS_MARQUEE);

Die Muhkuh 17. Mai 2008 18:53

Re: Problem mit eigene ProgressBar mit Marqueen
 
Stimmt himitsu. Da hab ich nicht ganz aufgepasst. War ja schon recht spät. :duck:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:45 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