![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Как сделать чтоб текст двигался на Image В нужном мне направлении
Я хочу чтобы у меня на Image Был текст (Белый) и двигался вправо Помогите Пожалуйста!!! Очень надо!!! |
|
#2
|
||||
|
||||
|
Код:
procedure TForm1.Timer1Timer(Sender: TObject); begin Image1.Top:=Image1.Top+10; Image1.Left:=Image1.Left+10; end; Принцип думаю понял =) |
|
#3
|
|||
|
|||
|
Если я правильно понял, то тебе надо поверх картинки двигать свой текст. Вариант действий такой:
1. Грузишь картинку в TImage и в буферный TBitmap (например). 2. Копируешь буфер в TImage и отрисовываешь на буфере текст в нужной позиции. 3. Меняешь координаты позиции и переходишь к шагу 2. Можно использовать TPaintBox для вывода и буфер для картинки. |
|
#4
|
||||
|
||||
|
Не вы меня не поняли я имел введу я пишу
Form1.Image1.Canvas.Brush.Color:=clBlack; Form1.Image1.Canvas.Rectangle(0,0,180,180); Form1.Image1.Canvas.Brush.Color:=clRed; Form1.Image1.Canvas.TextOut(x,y,text); где: x := x+1; y := 10; Text := ''; 1) Как сделать цвет текста ни черным а белым! 2)И Двигать его вправо! Воть и все это на одном Image ![]() |
|
#5
|
|||
|
|||
|
Понял правильно. Это ты не понял что я написал.
Текст белым - Form1.Image1.Canvas.Font.Color := clWhite; Что бы двигался -выводи в цикле. Попростому Код:
procedure TForm1.Button1Click(Sender: TObject);
var
I : Integer;
begin
Image1.Canvas.Font.Color := clWhite;
For I := 10 To 100 Do
Begin
Image1.Refresh;
Image1.Canvas.TextOut(I,50,'fff');
Sleep(100);
End;
end;Правда такой фокус пройдет только если у тебя загружен битмап. |
|
#6
|
||||
|
||||
|
Не пашет а за цвет текста спасибо!
![]() |
|
#7
|
|||
|
|||
|
Читай внимательно. Это будет работать только если в Image загружен битмап. Если у тебя там другой формат, то надо делать через буфер, как я писал ранее.
|
|
#8
|
||||
|
||||
|
Код:
procedure TForm1.BitBtn1Click(Sender: TObject);
const text = 'Текст Текст Текст';
var
n : integer; // для цикла
buf, textimg : Tbitmap; // два временных изображения
begin
buf := Tbitmap.Create;
textimg := Tbitmap.Create;
// Создание изображения текста
with textimg do
begin
canvas.Font.Color := ClWhite;
Canvas.Font.Size := 12;
Width := textimg.Canvas.TextWidth(text) + 4;
Height := textimg.canvas.textheight(text) + 4;
Canvas.Brush.Color := RGB(120,120,120);
canvas.fillrect(rect(0,0,textimg.Width, textimg.Height));
Canvas.TextOut(2,2, text);
Transparent := true;
end;
// Теперь в цикле меняем координаты текста и вывводим его
for n := 0 to image1.Width do
begin
image1.Refresh;
buf.LoadFromFile('bitmap.bmp'); // здесь указать путь до картинки, загруженной в TImage
buf.Canvas.draw(n, 50, textimg);
image1.picture.Bitmap.canvas.Draw(0,0, buf);
sleep(10);
end;
buf.Free;
textimg.free;
end;Последний раз редактировалось Vex_TH, 10.08.2008 в 01:25. |
|
#9
|
||||
|
||||
|
Понятно! Спасибо!
![]() |