Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 16.06.2009, 13:57
digimon digimon вне форума
Прохожий
 
Регистрация: 20.04.2009
Сообщения: 15
Репутация: 10
Вопрос PaintBox нужна помощь

Подскажите пожалуйста, я создаю форму, на ней делаю процедуру TPaintBox, рисую изображение, но после запуска программы, изображение рисуется только после клика мыши. Как сделать, чтобы изображение сразу показывалось после запуска программы. Вот сам код процедуры.
Код:
procedure TForm1.PaintBox1Click(Sender: TObject);
var al6th, N, X: word;
begin
 with sender as tpaintbox, canvas do
 begin
 Brush.Color :=color;
 FillRect(clientRect);
 with ClientRect do
  Rectangle(Left, Top, Right, Bottom);
  al6th := PixelsPerInch div 16;
  N :=0; X:=0;
  while X <width do
  begin
  MoveTo (X,1);
  LineTo (x, 6*(1+(Byte(N MOD 2=0)+
   Byte(N MOD 4=0)+
   Byte(N MOD 8=0)+
   Byte(N MOD 16=0))));
  Canvas.Font :=Font;
  if (N>0) and (N mod 16=0) then
   TextOut(PenPos.X+3, PenPos.Y-16,
     IntToStr(N div 16));
   N:=N+1;
   X:=X+al6th;
   end;
  end;
end;
Admin: Не забываем про теги!

Убрать слово Click тут не катит( Подскажите

Последний раз редактировалось Admin, 16.06.2009 в 14:01.
Ответить с цитированием
  #2  
Старый 16.06.2009, 14:16
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Ну вызови эту процедуру у Form в OnCreate.
Ответить с цитированием
  #3  
Старый 16.06.2009, 14:29
digimon digimon вне форума
Прохожий
 
Регистрация: 20.04.2009
Сообщения: 15
Репутация: 10
По умолчанию

Знать бы еще что это такое Я делфи пару дней изучаю
Ответить с цитированием
  #4  
Старый 16.06.2009, 14:32
Fonoman Fonoman вне форума
Прохожий
 
Регистрация: 12.06.2009
Сообщения: 21
Репутация: 10
По умолчанию

в Object TreeView щёлкни 2 раза по Form1 и откроется окошко
с
procedure TForm1.FormCreate(Sender: TObject);
begin

end;

end.
Ответить с цитированием
  #5  
Старый 16.06.2009, 14:43
Аватар для TOJluK
TOJluK TOJluK вне форума
Местный
 
Регистрация: 25.02.2009
Адрес: Минск
Сообщения: 551
Версия Delphi: 2007
Репутация: 110
По умолчанию

Я бы даже сказал, просто щелкни по форме 2 раза, ну и там напиши так:
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
PaintBox1Click(Self);
end;
Вроде так.
Ответить с цитированием
  #6  
Старый 16.06.2009, 15:00
digimon digimon вне форума
Прохожий
 
Регистрация: 20.04.2009
Сообщения: 15
Репутация: 10
По умолчанию

Пишет ошибку. Выкладываю сам файл проги, поправьте пожалуйста, а то завтра экзамен (
Вложения
Тип файла: rar линейка.rar (5.3 Кбайт, 4 просмотров)
Ответить с цитированием
  #7  
Старый 16.06.2009, 15:39
AlexSku AlexSku вне форума
Специалист
 
Регистрация: 07.05.2007
Адрес: Москва
Сообщения: 884
Репутация: 21699
По умолчанию

Надо использовать обработчик не PaintBox.OnClick (и не Form.OnCreate), а PaintBox.OnPaint
Ответить с цитированием
  #8  
Старый 17.06.2009, 03:24
digimon digimon вне форума
Прохожий
 
Регистрация: 20.04.2009
Сообщения: 15
Репутация: 10
По умолчанию

Спасибо, вроде помогло
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:25.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter