![]() |
Label Ticker als Buchstaben-Laufschrift
Ja wie geht das :?: :?: :?:
Wer nich weiß was ich meine kann sich diesen Bildschirmschoner mal an sehen ! und staunen ![]() ich denke mal das man das mit sellenght usw. machen müßte ich möchte das wir das hier rausbekommen und wenn ick warten muß bis ich schwarz werde *gg* |
schau mal hier nach, is ja sowas ähnliches denke ich, hab mir den bildschirmschoner net geladen.
![]() |
Danke Haegar
Aber der Code Wie erstelle ich eine Senkrechte Laufschrift? ist von mir :lol: |
:firejump: rofl :freak:
tja kann ja mal vorkommen ;)) ich nehme mal an der tipp hat dir nicht geholfen :lol: naja beim nächsten mal ciao haegar |
Liste der Anhänge anzeigen (Anzahl: 1)
im anhang findest du ein bsp.
zugegeben, wie ich das image da leere ist nicht gerade die feine englische art, aber es ist nur ein bsp :) |
@Snoop007
könntest Du vieleicht für den armen (damit sehr zufriedenen) Delphi 4 Besitzer die exe-Datei auch anhängen? ps. Wie ich aus dem Titel des Attachements herauslesen kann, handelt es sich um eine senkrechte Laufschrift - will er nicht eine Wagrechte? :?: |
Delphi-Quellcode:
:?: :?:
unit Unit1;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type TMainForm = class(TForm) PanelMarquee: TPanel; Timer: TTimer; procedure TimerTimer(Sender: TObject); procedure FormCreate(Sender: TObject); private Count : Integer; Text : String; { Private-Deklarationen } public { Public-Deklarationen } end; var MainForm: TMainForm; implementation {$R *.DFM} procedure TMainForm.TimerTimer(Sender: TObject); begin PanelMarquee.Caption := copy(Text,1,Count); inc(Count); if Count>length(Text) then Count := 1; end; procedure TMainForm.FormCreate(Sender: TObject); begin Count := 1; Text := '1234567891234566789'; end; end. |
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
falls es doch wagerecht sein sollte, einfach createfont löschen und in der abfrage heigh mit width ersetzen und die variable i an bei textout an erster position :) |
Sorry das ich mich nicht so schnell gemeldet habe!
Was Mirilin gepostet hatte ist genau wo nach ich gesucht habe danke dir! @Snoop007 deine Code ist aber auch nicht übel Gruß Tino und danke euch beiden |
gern geschehen!
|
Ich hab mir das alles mal angesehen und ausprobiert...
meine frage: ist das wirklich ne laufschrift!? unter laufschrift verstehe ich, dass die buchstaben von rechts kommen und nach links durchgegeben werden, irgendwann verschwinden, oder irre ich da?! wie bekommt man sowas denn hin? |
Delphi-Quellcode:
Wohl nicht die Beste, aber dennoch eine Möglichkeit
unit HorzMarquee;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls; type TMainForm = class(TForm) PanelMarquee: TPanel; Timer: TTimer; PB: TPaintBox; procedure FormCreate(Sender: TObject); procedure TimerTimer(Sender: TObject); private Text : String; P : TPoint; Bit : TBitmap; w : Integer; sw : Integer; GoLeft : Boolean; procedure GetVisibleText; procedure WM_Destroy(var Msg : TMessage);message WM_DESTROY; procedure DrawVisibleText; { Private-Deklarationen } public { Public-Deklarationen } end; var MainForm: TMainForm; implementation {$R *.DFM} procedure TMainForm.FormCreate(Sender: TObject); var FSize : Size; begin Bit := TBitmap.Create; Bit.Width := PB.Width; Bit.Height := PB.Height; Bit.Canvas.Font.Name := 'Courier New'; Bit.Canvas.Font.Size := 25; GetTextExtentPoint32(Bit.Canvas.Handle,'A',1,FSize); w := FSize.cx; P.x := 0; P.y := (Bit.Height-FSize.cy) div 2; Text := 'Der Meister geht schlafen...'; GetTextExtentPoint32(Bit.Canvas.Handle,PChar(Text),Length(Text),FSize); sw := FSIze.cx; GoLeft := false; GetVisibleText(); end; procedure TMainForm.WM_Destroy(var Msg: TMessage); begin Bit.Free; end; procedure TMainForm.TimerTimer(Sender: TObject); begin GetVisibleText(); DrawVisibleText(); end; procedure TMainForm.GetVisibleText; begin if GoLeft then begin Dec(P.x,w); if P.x<-sw then begin P.x := Bit.Width; end; end else begin Inc(P.x,w); if P.x>Bit.Width then begin P.x := -sw; end; end end; procedure TMainForm.DrawVisibleText; begin Bit.Canvas.FillRect(Rect(0,0,Bit.Width,Bit.HEight)); Bit.Canvas.TextOut(P.x,P.y,Text); PB.Canvas.Draw(0,0,Bit); Application.ProcessMessages; end; end. |
Zitat:
Delphi-Quellcode:
Gruß Tino
//Laufschrift von Rechts nach Links
var h: Integer; procedure TForm1.Timer1Timer(Sender: TObject); begin with Label1 do begin Left := Left -1; if Left =(0 -Left) then Left := h; end; end; procedure TForm1.FormResize(Sender: TObject); begin h := Form1.ClientWidth -32; Label1.Left := h; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:35 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz