Форум программистов, компьютерный форум, киберфорум
Бета-тестирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.52/25: Рейтинг темы: голосов - 25, средняя оценка - 4.52
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30

Визуал Бейсик 6 Редактор для художественного рисования

30.06.2019, 14:22. Показов 6169. Ответов 56

Студворк — интернет-сервис помощи студентам
Сделал графический редактор для художественного рисования.
Среда программирования VB6.
Скачать программу и ознакомиться с ней можно здесь - http://yadi.sk/d/bd3PVYUko3qdEA
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.06.2019, 14:22
Ответы с готовыми решениями:

Как разбить изображение на brg и каждый цвет на 8 градаций?
Вопрос? как разбить изображение на brg и каждый цвет на 8 градаций? Чтоб получилось 8*3=32 изображениям по градациям...

Как запрограммировать прокручивание формы в визуал бейсик 6.0?
Хочу создать игру, в которой игрок передвигается по миру, вроде как в "Герои меча и магии". Есть мысль сделать, чтобы сам герой не...

Диалект языка Бейсик - Spectrum-Бейсик
Приветствую всех. Недавно в сети нашла книгу: "Как написать игру для ZX Spectrum"/ А. Купальцевич, И. Капульцевич, А. Евдокимов. - 2-е...

56
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
05.08.2019, 14:15
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
в обычной программе Паинт
В этой обычной программе есть вроде как неплохая кисть Акварель? Получше Вашей получается результат.
Название: di-ITI3G3.png
Просмотров: 136

Размер: 54.0 Кб
По крайней мере рисовать в Паинте как то привычнее и более правдоподобнее что ли.
Но Ваш проект мне тоже решительно нравится нестандартным подходом.
Особенно понравился аналог Spin Controls.
Название: di-ET5HHS.png
Просмотров: 131

Размер: 1.2 Кб
Ещё бы на нижней кнопке нарисовать подсказку, в виде стрелочки вниз, было бы идеально.
1
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
05.08.2019, 16:55  [ТС]
Знаете, я про акварельную кисть в Паинте не знал. Но я пользуюсь старым Паинтом, там такой кисти нет.
У меня Кисть №4 аналог такой кисти, если вектор затекания установить в ноль.
Однако кисть Паинта не проявляет затекающих свойств и скорость утолщения её не регулируется. Прозрачность тоже не регулируется. Кроме того, я не нашёл в Паинте кнопку Cls. Может, плохо искал?
=======
А не поможете мне в такой проблеме:
Программируя анимацию, я использую такие конструкции -

Public Sub C49(T As Integer, I As Integer) 'прокрутка анимации
If TS(I) > 0 Then
Select Case I
Case 1: Form1.Picture1.Picture = Form1.Picture9.Picture: DoEvents: Sleep (T + TS(I)) * 30
Case 2: Form1.Picture1.Picture = Form1.Picture10.Picture: DoEvents: Sleep (T + TS(I)) * 30
Case 3: Form1.Picture1.Picture = Form1.Picture11.Picture: DoEvents: Sleep (T + TS(I)) * 30
и так далее... а вот завершение этой простыни -
Case 41: Form1.Picture1.Picture = Form1.Picture49.Picture: DoEvents: Sleep (T + TS(I)) * 30
Case 42: Form1.Picture1.Picture = Form1.Picture50.Picture: DoEvents: Sleep (T + TS(I)) * 30
End Select: End If
End Sub

Вопрос - а нельзя ли конкретный номер Form1.Picture49.Picture проиндексировать?
Было бы хорошо писать так - Form1.Picture(I+8).Picture

и как это делается, если делается вообще. У меня таких простыночек в программе 6. Больше, как оказалось, не надо.
Но в принципе. Нельзя ли избавиться от них?
Сейчас у меня в программе 42 кадра для рисунков анимации, умножить на 10 папок, куда можно поместить отснятый материал, чтобы организовать в будущем из них сплошное кино, длительностью пару минут.

Добавлено через 11 минут
Насчёт подсказки на нижней кнопке я думал, но у меня много таких кнопок, совершенно одинаковые подсказки тогда зря мельтешить перед глазами будут. И я подумал - пользователь понажимает кнопочки, и разберётся с ними сам.

Добавлено через 15 минут
"стрелочки вниз" нет в шрифте, или VB6 подобные символы отвергает. можно только буквы. На одной из кнопок я поместил букву v, как указатель направления вниз. Делать кнопки с графическими картинками - возни много. Поэтому я текстом обхожусь. Цвет окрашивания кнопок тоже очень помогает. И как сигнал во время работы, просто, чтобы пользователь не перепутал кнопки. Если "ландшафт" интерфейса абсолютно ровный, то это нехорошо.
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
05.08.2019, 18:21
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
Вопрос - а нельзя ли конкретный номер Form1.Picture49.Picture проиндексировать?
Можно. Только это делается на стадии создания. Готовые Picture уже переделать нельзя.
Вы должны создать первый Picture, пусть он будет Picture7. Потом его надо скопировать(ПКМ через контекст меню) и сразу вставить.
VB6 спросит, а не создать ли нам массив таких Picture? Вы отвечаете утвердительно.
И после этого вставляете свои 49 Picture подряд. Они все будут называться Picture7(Index)
Процедура анимации на 50 кадров будет выглядеть так:

Visual Basic
1
2
3
4
5
6
Private Sub Anima(T As Integer)
For I = 0 To 49
      Picture1.Picture = Picture7(I).Picture
      DoEvents: Sleep (T * 30)
Next
End Sub
Пример реализации:
Вложения
Тип файла: zip __vbANI.zip (12.0 Кб, 1 просмотров)
1
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
05.08.2019, 19:03  [ТС]
О, большое спасибо.
У меня в планах сделать для анимации специальную программу. Но это когда некий опыт в достаточно простой анимации приобрету. Тогда попробую.
Посмотрите клип о рисовании морской волны - http://youtu.be/DM-Bu9brVDE
Только что разместил его.
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
05.08.2019, 21:25
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
клип о рисовании морской волны
Довольно интересно. В Вашей программе много различных "фишек", которые сложно применить интуитивно.
Вам нужен обширный файл помощи, или на каждую опцию видео снимать.
1
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,532
06.08.2019, 07:35
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
но у меня много таких кнопок, совершенно одинаковые подсказки тогда зря мельтешить перед глазами будут
ещё как достают когда не нужны

это решается просто, добавь чек в настройках и маленькую функцию, tit() это карта со всеми подсказками, ключ он же имя элемента
PureBasic
1
2
3
4
5
6
7
Procedure showHideTitles(); показать/не показать подсказку
If GetGadgetState(chk("tips")\a)=1; показать
ForEach tit():If tit()\s:GadgetToolTip(tit()\a, "  "+tit()\s+"  "):EndIf:Next
Else; удалить
ForEach tit():GadgetToolTip(tit()\a, ""):Next
EndIf
EndProcedure
чек это глобально, он запоминается, ещё делал кнопку которая не запоминалась, но на лету включала/выключала подсказки, оказалось удобно, в проге было много закладок и бегать в настройки не очень, а тут на каждой закладке кнопка, у неё своя неудаляемая подсказка
1
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
06.08.2019, 10:19
Цитата Сообщение от newJS Посмотреть сообщение
это решается просто
К сожалению ( а может и к счастью!) VB6<>PureBasic
1
Эксперт JSЭксперт HTML/CSS
2436 / 1115 / 312
Регистрация: 23.06.2011
Сообщений: 3,532
06.08.2019, 16:22
Цитата Сообщение от Pro_grammer Посмотреть сообщение
К сожалению ( а может и к счастью!) VB6<>PureBasic
И чё? визуал настолько плох что не может провернуть такой фокус?
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
07.08.2019, 07:37
Цитата Сообщение от newJS Посмотреть сообщение
визуал настолько плох
Об этом разве разговор?
1
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
07.08.2019, 11:57  [ТС]
А не поможете ещё в таком деле:
У меня в программе 2 размера окна picturebox - маленькое и большое.
Перехожу от одного к другому, меняя свойства Height и Width.
Загружаю картинку маленького формата. Редактирую её в маленьком окне,
запоминаю - SavePicture Picture1.Image,"имя_файла". Получается она по формату маленького окна. И я в общем-то против этого не возражаю.

Однако, если я в процессе работы сделаю окно большим, а потом опять маленьким, то формат запоминания будет соответствовать размеру большого окна.

Вопрос - как сделать так, чтобы запоминаемый файл получался бы размером поменьше?
Когда файл одиночный, то проблем нет - зашёл в Паинт и обрезал его. Но если делать анимацию, то получается масса файлов огромного размера. И это неудобно.

Добавлено через 19 минут
Можно, конечно исхитриться. Поставить дело на поток. Сделать специальную программу с двумя окнами - малюсеньким, и того размера, который нужен.
Затем читать файлы большого формата в окошечко малюсенького размера, потом переписывать методом PaintPicture часть изображения в окно нужного формата, и наконец, запоминать файлы нужным форматом.
Но неужели другого способа нет?
Я походил по поисковику, проблема такая есть, народ интересуется, но вразумительного ответа я не нашёл.
0
 Аватар для Pro_grammer
6807 / 2840 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
07.08.2019, 17:19
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
Однако, если я в процессе работы сделаю окно большим, а потом опять маленьким, то формат запоминания будет соответствовать размеру большого окна.
Вопрос - как сделать так, чтобы запоминаемый файл получался бы размером поменьше?
Считаем, что Picture2 больше, чем Picture1.
Тогда так сохранится только видимая часть Picture1:
Visual Basic
1
2
Picture1.Picture = Picture2.Image
SavePicture Picture1.Image, "c:\test1.bmp"
Если нужно масштабировать изображение, то код сложнее. Сходите на форум по VB6? там есть решение.
1
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
07.08.2019, 18:33  [ТС]
Спасибо. У меня проблема сама собой рассосалась. Оказалось, что её решение у меня в программе уже есть. Кадры мультфильма, которые видны на форме краешками малюсенького размера
https://www.cyberforum.ru/atta... 1565191056
я запоминаю именно так - копирую их на окно рисунка и запоминая его. Если окно рисунка побывало в большом формате, то файлы получаются большого размера.
Но это ничего - я закрываю редактор, вновь открываю его, загружаю эти файлы и ещё раз запоминаю их. Точно так же - опять через окно рисунка редактора. Но поскольку редактор в режиме большого окна не побывал, то файлы получаются меньшего размера.
Миниатюры
Визуал Бейсик 6 Редактор для художественного рисования  
0
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
07.08.2019, 22:19  [ТС]
Аладин, между тем, уже перемещается в пространстве - http://yadi.sk/i/Faz8IH6I0v5g0w
)) и на этом я, пожалуй, закончу. Буду делать что-нибудь другое. Спасибо за помощь в работе.
0
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
22.04.2020, 14:31  [ТС]
С масштабированием я разобрался только сейчас - http://proza.ru/2020/04/22/1178
Между делом, находясь на карантине, сделал новую версию редактора с неограниченным по размерам поле рисования. Получилось удачно, и в отношении дизайна тоже - http://proza.ru/2020/04/07/1977
0
1 / 2 / 0
Регистрация: 30.06.2019
Сообщений: 30
29.08.2024, 09:00  [ТС]
Ау! Вы там живы ещё? Я имею в виду, форум по Визуал Бейсику ещё работает?
С первых моих проб по компьютерному рисованию много времени прошло. Теперь редактор несколько другой, но интерфейс похожий. Зато масса других возможностей появилось. Например, векторная графика в стереометрии для подготовки к экзаменам ЕГЭ.
Или анимация. Возможности редактора можно видеть тут https://dzen.ru/video/watch/65... 1406496669
Дмитрий.
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18376 / 14307 / 5370
Регистрация: 17.03.2014
Сообщений: 28,992
Записей в блоге: 1
29.08.2024, 23:38
Цитата Сообщение от ДмитрийМаштаков Посмотреть сообщение
форум по Визуал Бейсику ещё работает?
Работает. В чем несложно убедиться.
0
Эксперт .NET
 Аватар для Usaga
14745 / 9519 / 1364
Регистрация: 21.01.2016
Сообщений: 35,913
30.08.2024, 07:15
ДмитрийМаштаков, похвально, что работа над приложением ведётся. Но UI очень жестокий. Прямая противоположность словам "удобно" и "интуитивно понятно".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.08.2024, 07:15

Редактор для рисования
Привет всем!!! Нужно что-нибудь нарисовать, в нете искал не нашел. Помогите может кто-нибудь что-то подобное делал, залейте плиз. или...

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

Графический редактор на Qt. Область рисования
Пишу простенький графический редактор в Qt Creator. Проблема в том, что я не очень понимаю, как создать область рисования(холст) и как...

Ищу OpenGL 3D редактор с возможностью рисования примитивов
Доброго времени суток. Проблема следующая. По работе работаю в среде ArcGis. Предполагалось, что для 3D черчения я буду использовать...

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


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

Или воспользуйтесь поиском по форуму:
57
Ответ Создать тему
Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru