Dòng chữ chạy ngang qua màn hình
Viết chương trình để nhập 1 xâu kí tự từ bàn phím và đưa xâu đó ra màn hình có dạng dòng chữ chạy giữa màn hình văn bản 25 x 80.
Bài này thuộc dạng vẽ hình chuyển động.
Cách đơn giản nhất là xóa đi vẽ lại.PHP Code:
Cách 2: Sử dụng biến động, cách này vẽ đẹp hơn.Đặt [x,y] là tọa độ bắt đầu dòng chữ.
Repeat
SetColor[Yellow];
OutTextXY[x,y,st];
Delay[10]; // làm trễ
SetColor[Black];
OutTextXY[x,y,st];
x:=x+dx; // dx là bước nhảy, dx càng lớn thì chạy càng nhanh
If x+Length[st]>GetMaxX then x:="Giá trị x ban đầu";
Until KeyPressed;
Cần thì post sau.Code:
uses crt; var i:integer; a:string; begin a:='Chao Mung Ban Den Dien Dan Tin Hoc'; for i:=1 to 78 do a:=' '+a; a:=a+a; clrscr; repeat inc[i]; gotoxy[1,12]; write[copy[a,i,79]]; delay[150]; if i=120 then begin i:=0; clrscr; end; until keypressed; end.
Pà chị chơi ở Text Mode à?
Cái chữ chuyển động thế này Text Mode xấu lắm. Graph Mode mới chấp nhận được.c chỉ bik thế này thôi
. Nghịch cho vui thôi chứ đâu có thi mí cái nìCác bạn tham, gia các cách viết chương trình
học pas gần 1 năm trời rồi mà mình có biết gì đến đồ họa đâu , chắc cũng chỉ chơi text mode thôi
Đồ họa khá nhiều cái hay. Thi xong thử học đi.
Nhân tiện post cách 2:
1. Lưu hình: Để lưu hình bất kì, tính HCN bao hình đó:
Dùng hàmPHP Code:
ImageSize[x1,y1,x2,y2:Integer]:Integer;
2. Bố trí bộ nhớ để cất hình:
Thủ tục:PHP Code:
Thủ tục này sử dụng con trỏ ko định kiểu P, tạo ra 1 biến động có độ lớn n byte.GetMem[Var P:Pointer; n:Word];
Để giải phóng:PHP Code:
3. Chép hình vào bộ nhớ:FreeMem[Var P:Pointer;n:Word];
Sử dụng thủ tục:PHP Code:
TT này chép các điểm ảnh trong HCN [x1,y1,x2,y2] trên màn hình vào vùng nhớ được con trỏ P trỏ tới.GetImage[x1,y1,x2,y2:Integer; Var P:Pointer];
4. Khôi phục hình đã cất = GetImage, sử dụng thủ tục:PHP Code:
Thủ tục này chép hình lưu trong biến động được trỏ tới bởi P vào vị trí x,y.PutImage[x,y:Integer;Var P:Pointer;Mode:Word];
Mode có các giá trị:
CopyPut=0: Sao chép đè lên. Hình cũ mất
XORPut=1: Không nhớ, nhưng dùng cái này để tạo hình chuyển động.
Hình như còn AndPut hay OrPut thì phải, quên rồi.
Vậy thì các bước cần làm là:PHP Code:
Đơn giản thôi mà.1. Vẽ chữ. Lưu vào biến động ko định kiểu.
2. Tạo trễ [Delay]
3. Xóa hình, khôi phục nền cũ với PutImage và phép XORPut.
4. Vẽ ở vị trí mới
Cần thêm ví dụ không?cho tôi hỏi thứ tự làm cho dòng chữ chạy trên màn hình destop