Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2017, 11:30   #1
Наталочка12
Пользователь
 
Регистрация: 16.11.2016
Сообщений: 12
По умолчанию делфи7. Напишите обработчик события onClick компоненты Button1, который закрашивает компоненту Image1 целиком белым цветом и рисует 100 черных точек в случайных координатах

Друзья, помогите пожалуйста решить задачку. В делфи вообще ничего не понимаю! (последний зачет)
Напишите обработчик события onClick компоненты Button1, который закрашивает компоненту Image1 целиком белым цветом и рисует 100 черных точек в случайных координатах.

Последний раз редактировалось Наталочка12; 12.01.2017 в 11:33.
Наталочка12 вне форума Ответить с цитированием
Старый 12.01.2017, 11:42   #2
Artsiom
Форумчанин
 
Аватар для Artsiom
 
Регистрация: 13.07.2012
Сообщений: 357
По умолчанию

Код:
procedure TForm4.Button1Click(Sender: TObject);
var
  I: Integer;
begin
Form4.Image1.Canvas.Brush.Color := clWhite;
Form4.Image1.Canvas.Pen.Color := clWhite;
Form4.Image1.Canvas.Rectangle(0, 0, Form4.Image1.Width, Form4.Image1.Height);

for I := 0 to 99 do
  Form4.Image1.Canvas.Pixels
    [Random(Form4.Image1.Width+1), Random(Form4.Image1.Height+1)] := clBlack;

end;
Сойдёт?
Artsiom вне форума Ответить с цитированием
Старый 12.01.2017, 12:01   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

в Random +1 делать не нужно!

ещё такой вариант:
Код:
var i: integer;
begin
  Randomize;
  Image1.Canvas.Brush.Color:=clWhite;
  Image1.canvas.fillrect(canvas.cliprect);
  for i := 1 to 100 do
    Image1.canvas.Pixels[ Random(Image1.Width), Random(Image1.Height) ] := clBlack;
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 12.01.2017, 12:09   #4
Artsiom
Форумчанин
 
Аватар для Artsiom
 
Регистрация: 13.07.2012
Сообщений: 357
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
в Random +1 делать не нужно!
Почему? Он же тогда не будет использовать координату (Image1.Width, Image1.Height)
Ну, 0<= результат< координата
Artsiom вне форума Ответить с цитированием
Старый 12.01.2017, 12:11   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Она и не используется: 0<=x<Image1.Width. Аналогично и высота
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 12.01.2017, 12:40   #6
Наталочка12
Пользователь
 
Регистрация: 16.11.2016
Сообщений: 12
По умолчанию

там Form4 или же Form1?
Наталочка12 вне форума Ответить с цитированием
Старый 12.01.2017, 13:01   #7
Наталочка12
Пользователь
 
Регистрация: 16.11.2016
Сообщений: 12
По умолчанию

Ребята, спасибо вам большое!!! Очень помогли
Наталочка12 вне форума Ответить с цитированием
Старый 12.01.2017, 13:02   #8
Artsiom
Форумчанин
 
Аватар для Artsiom
 
Регистрация: 13.07.2012
Сообщений: 357
По умолчанию

У меня Form4, у вас, вероятно, Form1.
Artsiom вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти среднее арифметическое в массиве из 30 случайных чисел в диапазоне [-100; 100] kurdasov Помощь студентам 2 18.11.2016 22:40
Как создавать текстовые поля с белым цветом линии NSvirus HTML и CSS 2 09.11.2009 01:02
TListView; не рисует цветом TCanvas JetAPI Компоненты Delphi 9 24.08.2007 22:22