Scrolltext in Programm anzeigen?
spacer
Autor Nachricht
D.Elphi
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Fr 25.11.11 23:39 
Moin zusammen,
ich möchte in einem Label einen Scrolltext durchlaufen lassen. Kann mir da jemand helfen - ist ein TLabel überhaupt der richtige Ansatz oder gibt es da andere Komponenten?

Für Antworten bedanke ich mich im Voraus,
D.Elphi


Moderiert von user profile iconNarses: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Sa 26.11.2011 um 06:15
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.


Werbung ausblenden? Dann registriere Dich kostenlos. Weitere Gründe für eine Registrierung.
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 15841
Erhaltene Danke: 741

XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
BeitragVerfasst: Fr 25.11.11 23:44 
Ich würde eine TPaintBox nehmen und es selbst zeichnen (oder auch in einer eigenen Komponente). Denn sonst ruckelt es nur unnötig, da du in einem Label ja nicht pixelweise sondern zeichenweise scrollen würdest.
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
D.Elphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Fr 25.11.11 23:46 
Danke schonmal für diesen Ansatz - kannst Du das evtl. näher (vielleicht mit Quelltext) erläutern? Dankeschön :)
PS: Angenommen, das Ruckeln stört mich nicht...wie sähe denn die Label-Lösung aus?
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Nersgatt
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Beiträge: 929
Erhaltene Danke: 70


Delphi 2010 Enterprise
BeitragVerfasst: Sa 26.11.11 08:43 
user profile iconD.Elphi hat folgendes geschrieben Zum zitierten Posting springen:

PS: Angenommen, das Ruckeln stört mich nicht...wie sähe denn die Label-Lösung aus?

Als Einsteigerfreundliche Lösung könnte man den Text einfach ins Label schreiben und das Label selbst verschieben.
Setz einen Timer aufs Formular und setz bei jedem Tick das meinlabel.left := meinlabel.left + 10;
Das ist die allereinfachste Lösung, die aber Probleme mit sich bringt. Du wirst z.B. feststellen, dass das Label nicht mehr sauber läuft, wenn Dein PC noch mit anderen Aufgaben beschäftigt ist. Aber das ist Teil des Lernprozesses :D
Fang also ruhig so an, wie ich oben beschrieben hab. Und dann verbessere das Programm.

_________________
Gruß, Jens
Zuerst ignorieren sie dich, dann lachen sie über dich, dann bekämpfen sie dich und dann gewinnst du. (Mahatma Gandhi)

Für diesen Beitrag haben gedankt: D.Elphi
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
D.Elphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Sa 26.11.11 10:11 
Hallo Nersgatt,
danke für deine Lösung. Das funktioniert alles wunderbar, nur habe ich nun das Problem, dass das Label nicht mehr "zurückkommt". Wie kann ich das machen, dass es wiederholt angezeigt wird?

mfg
D.Elphi
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 15841
Erhaltene Danke: 741

XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
BeitragVerfasst: Sa 26.11.11 10:18 
Für den Anfang könntest du es wieder nach links setzen, wenn es zu weit rechts angekommen ist. ;-)
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
D.Elphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Sa 26.11.11 13:22 
Meint ihr das in etwa so?
ausblenden Delphi-Quelltext markieren
1:
if Label1.Left := xy then Label1.Left := yx;
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 15841
Erhaltene Danke: 741

XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
BeitragVerfasst: Sa 26.11.11 13:29 
Wenn du jetzt noch den Vergleichsoperator statt dem Zuweisungsoperator im if benutzt, ja...

Für diesen Beitrag haben gedankt: D.Elphi
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
D.Elphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Sa 26.11.11 15:14 
also "=" anstatt ":="?

Übrigens, eine Frage habe ich noch:
Angenommen, ich möchte das Ganze ein wenig erweitern und zufällige "Nachrichten" aus einer Textdatei (nennen wir sie mal blabla.txt) anzeigen lassen. Wie bringe ich das Label dazu, diese anzuzeigen? Ich weiß, dass es dafür TStringList gibt, aber wie das geht, weiß ich nicht.
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 15841
Erhaltene Danke: 741

XP, W7 x64 (Chrome, IE9, FF), Debian, (OSX 10.7)
RAD XE 2, Java (NB), C++, C# (VS 2010), JS/HTML, PHP, Lazarus
BeitragVerfasst: Sa 26.11.11 15:25 
Naja, du lädst die Datei in eine TStringList und suchst dir dann mit Random eine der Zeilen aus. Die kannst du dann direkt in das Label packen, wenn du das ohnehin als einfache Notlösung komplett bewegst.

Für diesen Beitrag haben gedankt: D.Elphi
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
D.Elphi Threadstarter
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 88
Erhaltene Danke: 2

Win 7 Prof (WXP Mode)
XE2 Prof EDU
BeitragVerfasst: Sa 26.11.11 15:35 
Nein, meine Frage war, wie ich etwas in eine StringList einlese ;). Trotzdem schonmal danke im Voraus für deine Erklärung.
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
Jann1k
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starhalf offtopic starofftopic star
Beiträge: 786
Erhaltene Danke: 9

Win 7
TurboDelphi, Visual Studio 2010
BeitragVerfasst: Sa 26.11.11 16:33 
Die StringList müsste die Methoden loadFromFile und saveToFile haben.

_________________
Viele Leute denken, Zeit sei wie ein Fluss, der sanft und sicher in eine Richtung fließt, ich aber habe das Antlitz der Zeit gesehen und ich sage euch sie haben Unrecht, Zeit ist ein Ozean im Sturm...
 
Antworten mit Zitat Beitrag melden
Private Nachricht sendenPosting in privater Nachricht zitieren
home home