Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9

Клонирование существующего изображения (массива изображений)

01.08.2014, 13:33. Показов 1692. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день!

Как по клику на кнопку сделать копию уже существующего изобраения (массив изображений)?

Заранее благодарен...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.08.2014, 13:33
Ответы с готовыми решениями:

Клонирование части изображений
Всем здравствуйте. Существует ли в Builder6 функции клонирования части изображений или пользуемся BitBlt?

Создание безразмерного массива. Изменение границ уже существующего
Всем привет. Такая задачка. Есть текстовый файл. Считываю все его в массив string. string str = File.ReadAllLines(path); Затем мне...

Сравнить область изображения с массивом изображений
Здравствуйте. Помогите реализовать. 1. Нужно создать масив bitmap ов из ~100 фалов изображений. 2. Сравнить выбранную область...

13
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 13:38
Если это массив изображений и находятся они в объекте Image
то так:

Visual Basic
1
2
Load Image1(1)
Image1(1).Picture=Image1(0).Picture
Если картинка в файле то примерно так:
Visual Basic
1
Image1(1).Picture = LoadPicture("Файл")
1
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 13:40  [ТС]
Господи иисусе. Спасибо! Как все просто... а я мудрил. Простите, просто ранее работал и работаю с PHP, тут пришлось сделать небольшое извращение на VB, а он в этом плане отличный!
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 13:43
Так-же можно создать динамически:

Visual Basic
1
2
3
4
5
6
7
Private Sub Form_Load()
        With Controls.Add("vb.Image", "Image1")
        .Stretch = 1 'Автоматический размер
        .Picture = LoadPicture("Ваш файл")
        .Visible = 1
    End With
End Sub
1
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 13:45  [ТС]
Антихакер32, прошу прощения... еще небольшой вопросик...

Поясню зачем мне надо данная реализация...

У меня происходит загрузка картинок из файла (уже есть), и создание массива картинок с расположением их в столбик.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
For Check_img_count = 1 To Img_count_x
Load Img(Check_img_count)
With Img(Check_img_count)
.Picture = LoadPicture(App.Path & "\data\img\components\" & Img_url_mass(Check_img_count - 1))
.Left = 700
.Top = (Check_img_count - 1) * Img(Check_img_count - 1).Height * 1.2
.Visible = True
.ToolTipText = Img_url_mass(Check_img_count - 1)
Frame_external.Height = Frame_external.Height + Img(Check_img_count - 1).Height * 1.2
End With
Next Check_img_count
И надо, как оказалось, не просто по клику, а DragDrop. К примеру беру первую по индексу картинку, перетягиваю ее в любую точку формы, отпускаю и она остается на том месте где я ее дропнул (положил), НО самое важное, что она не должна убираться также со старого места, по сути я создаю клон той картинки из индекса которую выбираю... может поможете, пожалуйста?
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 13:57
Для этого у многих объектов (не только у Image1)
есть события DragDrop
примеры:
Visual Basic
1
2
3
4
5
6
7
Private Sub Image1_DragDrop(Source As Control, X As Single, Y As Single)
 
End Sub
 
Private Sub Image1_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
 
End Sub
Source, это перетаскиваемый объект

Добавлено через 4 минуты
Свойство у объекта DragMode должно быть =1 (Automatic)

Добавлено через 1 минуту
Если интересно, я выложу готовый проект, с двумя картинками
для того чтоб увидеть что и как...
1
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 13:59  [ТС]
Эххх... что то не выходит с моим кодом именно при работе с массивом картинок (((

Добавлено через 1 минуту
Если можно, выложите, пожалуйста... Блин с массивом не могу определить каокй обьект я пикнул (тяну)...
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 14:05
Цитата Сообщение от VakaVaka Посмотреть сообщение
Эххх... что то не выходит
Ok через час выложу
для примера скачаю свой замечательный аватар для упражнений
0
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 14:09  [ТС]
Делаю так:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub Img_DragOver(Source As Control, X As Single, Y As Single, State As Integer)
 
For i = 0 To Img_count_x
 
If Index = i Then
 
Load Img(Check_img_count + 1)
With Img(Check_img_count + 1)
.Picture = Img(i).Picture
.Left = X - Image1.Width / 2
.Top = X - Image1.Width / 2
.Visible = True
End With
 
End If
 
Next i
 
End Sub
И... кидает ошибку при компиле:
Миниатюры
Клонирование существующего изображения (массива изображений)  
0
Модератор
10057 / 3902 / 884
Регистрация: 22.02.2013
Сообщений: 5,853
Записей в блоге: 79
01.08.2014, 14:26
Лучший ответ Сообщение было отмечено Dragokas как решение

Решение

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Option Explicit
 
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
    Dim p As PictureBox
    Load pic(pic.UBound + 1)
    Set p = pic(pic.UBound)
    Set p.Picture = Source.Picture
    Set p.DragIcon = Source.DragIcon
    p.Move X, Y
    p.Visible = True
End Sub
На форме массив контролов pic. DragMode = Automatic
Вложения
Тип файла: rar DragDrop.rar (165.4 Кб, 25 просмотров)
2
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 14:39
Лучший ответ Сообщение было отмечено VakaVaka как решение

Решение

Вот
Вложения
Тип файла: rar Перетаскивание.rar (3.9 Кб, 18 просмотров)
1
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 14:42  [ТС]
Спасибо огромное!
0
 Аватар для Антихакер32
1201 / 473 / 46
Регистрация: 06.01.2014
Сообщений: 1,797
Записей в блоге: 19
01.08.2014, 14:45
Я хотел в течении часа еще чудес с картинками добавить..
но так как меня стали опережать успел сделать только это...

Кликните здесь для просмотра всего текста
Visual Basic
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
Option Explicit
Const rct = 1000
Dim ind&
 
Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)
    Debug.Print "Form_DragOver"
    Load Image1(ind)
    With Image1(ind)
        .Stretch = 1
        .Picture = Source.Picture
        .Move X, Y, Source.Width, Source.Height
        .DragMode = 1
        .Visible = 1
    End With
    ind = ind + 1
End Sub
 
 
Private Sub Form_Load()
    On Error Resume Next
    ChDir App.Path
    For ind = 0 To 3
        Load Image1(ind)
        With Image1(ind)
            .Stretch = 1
            .Picture = LoadPicture("avatar445967_15.gif")
            .Move 0, ind * rct, rct, rct
            .DragMode = 1
            .Visible = 1
        End With
    Next
End Sub
1
0 / 0 / 0
Регистрация: 23.07.2014
Сообщений: 9
01.08.2014, 14:49  [ТС]
Все просто идеально! Спасибо Вам огромное за помощь!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.08.2014, 14:49
Помогаю со студенческими работами здесь

Перетаскивание изображений листьев на изображения деревьев
Помогите сделать приложение с помощью которого можно будет перетаскивать изображения листьев на изображение соответствующего дерева если...

Генерация изображения из других изображений и текста
Здравствуйте. Подскажите, пожалуйста, куда копать или, может, есть готовые библиотеки для решения следующей задачи: Делаю вывод...

Наложение изображений, запись изображения в файл
Добрый день! Помогите разобраться пожалуйста, необходимо наложить в маткаде одно изображение на другое. Пока не получается. Что я...

Написать функцию дополнения уже существующего массива структур новыми структурами
нужно написать функцию дополнения уже существующего массива структур новыми структурами! нашел на форуме, что это можно реализовать с...

Поиск шаблонных изображений внутри другого изображения
Вообщем программа делает скриншот другой программы и ищет на скрине заранее созданные мелкие изображения, результат работы, ответ найден...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru