Форум программистов, компьютерный форум, киберфорум
Delphi: Графика, звук, видео
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
2 / 2 / 1
Регистрация: 11.05.2016
Сообщений: 27
1

Очистить форму при перетаскивание цветных кусочков картинки на черно белое фото

20.06.2016, 12:46. Показов 1010. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день уважаемые форумчане! Прошу помощи!!!!!!

Задача-перетаскивание цветных кусочков картинки на черно белое фото.

что сделано: закидываю на форму картинку, делю ее на 36 равных кусков, в image помещаю черно белую картинку а цветные куски размещаю с права от image, куски перетаскиваются и тд.

Проблема: нужно по нажатию кнопки закидывать другую картинку. (не удаляются 36 равных кусков). вот код


Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
var
 I, J : Integer;
  jpg : TJpegImage;
  buf : array[0..35] of TPoint;
begin
  Randomize;
  DoubleBuffered := True;
 
  jpg := TJpegImage.Create;
   if OpenPictureDialog1.Execute then
       jpg.LoadFromFile(OpenPictureDialog1.FileName);
  //jpg.LoadFromFile('2.jpg');
  bmp := TBitmap.Create;
  bmp.Assign(jpg);
 
  for I := 0 to 5 do
    for J := 0 to 5 do
    begin
      Buf[I * 6 + J].X := (J * 20) + I * 60 + 830;
      Buf[I * 6 + J].Y := (J * 80) + I * 10 + 10;
    end;
 
  for I := 0 to 5 do
    for J := 0 to 5 do
    begin
      Image[I * 6 + J] := TImage.Create(Self);
      with Image[I * 6 + J] do
      begin
        Parent      := Form9;
        Tag         := {35 -} (I * 6 + J);
        Width       := 133;
        Height      := 100;
        Left        := Buf[Random(36)].X;
        Top         := Buf[Random(36)].Y;
        OnMouseDown := ImageMouseDown;
        OnMouseMove := ImageMouseMove;
        OnMouseUp   := ImageMouseUp;
        Canvas.CopyRect(Image[I * 6 + J].Canvas.ClipRect, bmp.Canvas, Rect(J * 133, I * 100, J * 133 + 133, I * 100 + 100));
        Canvas.Brush.Style := bsClear;
        Canvas.Rectangle(Image[I * 6 + J].Canvas.ClipRect);
 
 
      end;
    end;
 
  jpg.Grayscale := True;
  bmp.Assign(jpg);
  bmp.PixelFormat := pf24bit;
  jpg.Free;
 
  Image1.Picture.Bitmap := bmp;
 
end;



пробовала так

Delphi
1
2
PatBlt(Form9.Canvas.Handle, 0, 0,
Form9.ClientWidth, Form9.ClientHeight, WHITENESS);
- не выходит, и еще много чего, понимаю что то простое......в общем ОДНА НАДЕЖДА НА ВАС!!!!!!

Добавлено через 1 час 47 минут
нужного решения там нет((((, уже весь инет перерыла! не пойму в чем ошибка
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.06.2016, 12:46
Ответы с готовыми решениями:

TV Panasonic TX-LR32U20 при подключении к компу черно-белое изо
собственно такой вопрос уже все мозги кипятъ шо ето Добавлено через 3 минуты :wall::help::help:...

Черно-белое изображение
Здравствуйте, возникла проблема создание сегментированного изображения.... Нашёл код для...

черно-белое пятно!
http://cs303405.vk.com/u8749524/146936473/z_5c0e6106.jpg что это такое? можно ли отремонтировать?

Чёрно-белое видео
Смотрю лекции на неком сайте. При он-лайн просмотре видео ч/б, при просмотре записи лекции -...

5
3586 / 2195 / 693
Регистрация: 29.05.2013
Сообщений: 9,374
20.06.2016, 23:06 2
Я вижу что вы создаете 36 имиджей:
Delphi
1
2
3
4
for I := 0 to 5 do
    for J := 0 to 5 do
    begin
Image[I * 6 + J] := TImage.Create(Self);
но вот нигде не вижу их уничтожения:
Delphi
1
2
for I := 0 to 35 
do Image[I].Free;
1
592 / 459 / 147
Регистрация: 09.12.2013
Сообщений: 2,385
Записей в блоге: 2
20.06.2016, 23:12 3
Зачем вообще их было стока создавать? Рисуйте на окне - и всё.
0
2 / 2 / 1
Регистрация: 11.05.2016
Сообщений: 27
21.06.2016, 04:46  [ТС] 4
Спасибо и правда про это я забыла)))!! Все получилось
0
2 / 2 / 1
Регистрация: 11.05.2016
Сообщений: 27
23.09.2016, 12:39  [ТС] 5
спасибо за тему))) оказалось пригодилась))))
0
0 / 0 / 2
Регистрация: 23.09.2016
Сообщений: 36
23.09.2016, 12:42 6
Зачем вообще их было стока создавать? Рисуйте на окне - и всё.
а мне показалось все предельно ясным))) выходит что то наподобие пазлов...
0
23.09.2016, 12:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.09.2016, 12:42
Помогаю со студенческими работами здесь

Цветное изображение -> черно-белое
как правильно сформировать матрицу яркости изображения и записать его в файл? что бы получить чб...

Алгоритм преобразования в черно-белое
Поясняя вопрос. 1. Понятно любой додумается до - все новые цвета это (r+g+b)/3 и в общем уже...

Opencv черно-белое изображение
Считываю изображение - перевожу его в черное-белое, вывожу в label, а оно странно отображается,...

Перевести изображение в чёрно-белое
Имеется QImage изображение которое необходимо сделать чёрно-белым. С помощью формул получалось...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru