• 0
AbuZakaria

نص متحرك Marquee

سؤال

كيف يمكن جعل النص يتحرك كmarquee كما في شريط الاخبار على TImage أو على اي Canavas بصورة ناعمة منتظمة ؟

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

5 إجابة على هذا السؤال .

  • 0

استخدم timer مع label

كما في المرفق

test.rar

تم تعديل بواسطه zaher207
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

استخدم timer مع استعمال TextOut ثم غير في x و y حسب الحاجة

Canvas
TextOut(X,Y:Integer;constText:string);

مثال بسيط جدا

var
i : integer;
Text : string;

procedure TForm1.FormCreate(Sender: TObject);
begin
Text:= 'Text for test';
i:=-50;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if i=MyImage.Width then i:=-50;
inc(i);
MyImage.Canvas.TextOut(i,10,text);
end;

تحياتي :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

طريقة اخرى:

ضع Label على الفورم, و من ثم اكتب بها النص الذي تريد عرضه بشكل كامل, مثلا:"مع تحيات الفريق العربي للبرمجة"

و من ثم ضع Timer و اضبطه بالسرعة المناسبة التي تريدها, و من ثم استخدم الكود التالي:

procedure TForm1.FormCreate(Sender: TObject);
begin
Timer1.Enabled := true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
txt : string;
begin
txt :=Label1.Caption;
Label1.Caption:=Copy(txt, 2, Length(txt) - 1) + Copy(txt,1,1);
end;

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

أحببت أن أنوه فقط إلى أن طريقة الأخ وائل باستعمال Label تعمل فقط في مساحة هذا المكون، فمثلا عند جعل هذا المكون Align=alTop

لن يعمل على كامل طول الواجهة أو قاعدة المكون المراد Label ،

لذلك أفضل العمل مع TImage لأنها أسهل في التعامل مع هكذا حركة لغرض المذكور في طلب الأخ أبو زكريا " كما في شريط الاخبار "

أما طريقة Label فهي أحسن حين تطبق على المساحات التي لا تحتاج إلى مساحات فراغ غير معلومة مثل Label و اسم التطبيق في شريط المهام

و السلام عليكم

تم تعديل بواسطه merouane
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

يمكنك استعمال مركبات LMD ففيها أمثلة رائعة جدا جاهزة

بالتوفيق

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .