Laufschrift zentriert
Übersicht

Dirk KnoopBetreff: Laufschrift zentriert |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
hier ein Code. Wie mache ich es, dass nur Text im blauen Bereich angezeigt wird ? Code: [AUSKLAPPEN] Graphics 800,600,0,2 SetBuffer BackBuffer() Global timer=CreateTimer(60) ;timer scrolltext$="Hallo, dieses hier ist nur ein Test, es soll nur soviel Text angezeigt werden, wie in dem blauen Kasten reinpasst. Links und rechts neben der blauen Box soll kein schwarzes gefülltes Rechteck gezeichnet werden." scrollx=300 While KeyHit(1)=0 Cls Color 0,0,255 Rect 100,150,500,20,1 Color 255,255,255 Text scrollx,155,scrolltext$ Text 10,10,scrollx ;diese Befehle sollen nicht benutzt werden! ;Color 0,0,0 ;Rect 0,150,100,20,1 ;Rect 600,150,200,20,1 WaitTimer timer Flip 0 scrollx=scrollx-1 If scrollx<-1200 Then scrollx=1000 Wend |
||
www.kostenloser-fussballmanager.de
www.discaim.de - weil Spaß kein Zufall ist www.torchance.de - ein etwas anderer Fußball-Manager |
![]() |
Eingeproggt |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ohne lang herumzurechnen mit Stringwidth würde ich ViewPort![]() |
||
Gewinner des BCC 18, 33 und 65 sowie MiniBCC 9 |
Dirk Knoop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für den Tipp, der hat mit sehr gut weitergeholfen und ich habe wieder was dazugelernt ![]() Den Befehl kannte ich noch gar nicht... Dirk |
||
www.kostenloser-fussballmanager.de
www.discaim.de - weil Spaß kein Zufall ist www.torchance.de - ein etwas anderer Fußball-Manager |
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Viewport ist natürlich zu bevorzugen, aber es geht auch ohne:
Code: [AUSKLAPPEN] ;wirklich nur den gescrollten sichtbaren Text schreiben
timer = CreateTimer(120) ;timer Graphics 800,600,0,2 SetBuffer BackBuffer() scrolltext$="Hallo, dieses hier ist nur ein Test, es soll nur soviel Text angezeigt werden, wie in dem blauen Kasten reinpasst. Links und rechts neben der blauen Box soll kein schwarzes gefülltes Rechteck gezeichnet werden." ;init scrollx = 100 scrollw = 500 lenText = Len(scrolltext$) toleranz = StringWidth("_") cposstart = 0 relpos = 0 tt$ = scrolltext$ Repeat If relpos < StringWidth(Left$(tt$, 1)) Then relpos = relpos + 1 Else cposstart = cposstart + 1 If cposstart > lenText Then cposStart = 0 relpos = 0 End If tt$ = "" cpos = cposstart While StringWidth(tt$) < scrollw - 2 * toleranz And cpos < lenText cpos = cpos + 1 tt$ = tt$ + Mid(scrolltext$, cpos, 1) Wend Cls Color 0,0,255: Rect 100,150,500,20,1 Color 255,255,255: Text scrollx - relpos + toleranz, 155, tt$ Flip 0 WaitTimer timer Until KeyDown(1) End Obwohl hier wirklich nur soviel Text geschrieben wird, wie angezeigt wird, sind die Berechnungen doch insgesamt höher, und das Programm ist langsamer als die Methode mit Viewport. |
||
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group