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 Label-Caption scrollen (https://www.delphipraxis.net/144-label-caption-scrollen.html)

Yheeky 13. Jun 2002 21:22


Label-Caption scrollen
 
Hi,

da das mit dem RichEdit bzw. Memo wohl keine weiss, wollte ich mal fragen, ob ich vielleicht irgendwie einen normalen Labeltext scrollen kann? Gibt es da irgendwelche Möglichkeiten?

Gruß Yheeky

Luckie 13. Jun 2002 21:30

Du könntest auch mit DrawText deinen Text direkt auf dem Canvas ausgeben mit SetBkMode(dc, TRANSPARENT);.

Daniel 13. Jun 2002 21:33

Bei Torry gibt es eine ganze Menge an Scrolling-Labels. Wenn Du es selber machen willst, dann würde ich - zumindest für eine Textzeile, die horizontal gescrollt werden soll - einen Timer nehmen und dann Zeichen für Zeichen in die Caption hineinkopieren und am anderen Ende dementsprechend ein Zeichen löschen.
Das wäre dann gewissermaßen die "do-it-yourself"-Variante.

Grüße,
Daniel

Yheeky 13. Jun 2002 22:32

Sorry, habe mich vielleicht falsch ausgedrückt. Ich suche nach einer Möglichkeit einen Text in einem Label vertikal zu scrollen. Eigentlich suche ich wie gesagt nach einem transparenten RichEdit oder Memo aber dazu kann mir leider niemand helfen, so wie es scheint.

Gruß Yheeky

MrSpock 14. Jun 2002 14:34

Hallo Yeeky,

es ist zwar nicht sonderlich elegant, aber du kannst ja selber "scrollen":

[code:1:9f8ce967e0]
{ Einfach mal schnell ein paar Zeilen erzeugen (zur Demo) }
MyList := TStringList.Create;
for i := 1 to 100 do

Yheeky 14. Jun 2002 14:58

Hi,

ich möchte die Caption ja nicht scrollen lassen, sondern mit einer ScrollBar selbst die Caption beeinflussen. Wie kann ich das machen?

@MrSpock: Trotzdem danke :wink:

Gruß Yheeky

MrSpock 14. Jun 2002 15:05

Hallo Yeeky,

ScrollBar einfügen und auf vertical stellen. Min=0, Max=79 (im Beispiel von oben):

ScollBar - onChange:
Code:
    newCap := '';
    for i := ScrollBar1.Position to ScrollBar1.Position+20 do
       newCap := newCap + MyList.Strings[i];
    Label2.Caption := newCap;
    Application.ProcessMessages;

Yheeky 15. Jun 2002 11:02

Habe mich inzwischen für eine andere Variante entschieden. Danke trotzdem für die Beiträge!

Gruß Yheeky


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