Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/18: Рейтинг темы: голосов - 18, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 18

Соединение блоков динамической прямой линией в программе для создания блок-схем

22.12.2012, 22:07. Показов 3787. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени. Делаю программу для создания блок-схем, для саморазвития. Столкнулся с проблемой, а именно проблема при создании связей между блоками. Я пытался рисовать на формах, но толком ничего не получилось. Связи не динамичные и стираются.
Я хочу, имея два блока.
Название: 3636336m.png
Просмотров: 423

Размер: 9.7 Кб
Провести между ними соединяющую линию.
Название: 3613808m.png
Просмотров: 423

Размер: 11.6 Кб
И что бы при перемещении одного из блока, линия сохраняла свою позицию.
Название: 3616880m.png
Просмотров: 422

Размер: 11.1 Кб

Собственно, вопрос и заключается в этом. Как лучше реализовать подобную вещь и куда копать? Пытался искать что-то на подобии контроллеров-линий, но ничего не нашел.
Надеюсь, описал понятно свою проблему.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.12.2012, 22:07
Ответы с готовыми решениями:

Нужна программа для создания блок схем
У кого есть скиньте или дайте ссылку!! за ранее спасибо_))

Нужна программы для создания блок-схем
подскажите пожалуста? программы для создания блок схем, с использованием кода .

Нужна программа для создания блок-схем
Доброго времени суток. Знаю, что не по теме Турбо Паскаля, но все же. Ребята, раньше ходили легенды про чудо-программу, в которую...

5
Темная сторона .Net
 Аватар для Noob.net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
22.12.2012, 23:10
asdon, Линия будет принимать 2 объекта-блока и рисоваться по кратчайшему пути.
Хотя можно принимать ближайшие координаты.

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

Есть вариант сделать рамку,которая будет принимать начальную позицию для рисования линии ну и конец соответственно.

Ответ - перерисовка. Все равно перерисовываем блок =)
1
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 18
23.12.2012, 10:51  [ТС]
Noob.net, так все-таки линию придется рисовать на формах? Жаль. Находить кратчайший путь не нужно, так как точки для связей строго заданные.
Спасибо, буду тогда дальше пытаться сделать нормальную отрисовку линий.
0
Темная сторона .Net
 Аватар для Noob.net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
23.12.2012, 12:12
asdon, можно попытаться сделать линию-контрол. Пробовали,в чем проблема,что получилось?

Позже дам свои потуги.
0
 Аватар для Doomer3D
180 / 180 / 32
Регистрация: 23.11.2012
Сообщений: 344
Записей в блоге: 1
23.12.2012, 12:24
А что мешает создать контрол-панель, левый-верхний угол совпадает с первой точкой, правый нижний - со второй (не или наоборот), и рисовать на этом контроле линию. Это если у тебя блоки отдельными контролами, иначе перерисовка.
0
0 / 0 / 0
Регистрация: 20.12.2011
Сообщений: 18
23.12.2012, 12:39  [ТС]
Noob.net, кода уже нет, но хотел сделать бокс с линией по диагонали, которая менялась бы в зависимости от расположения блоков. Не получилось реализовать, так как на этапе рисования этого бокса он рисовался криво, и линия была кривая. Погуглив я ничего не нашел про подобные контролы и решил отложить эту идею.

Сегодня утром хотел снова сделать рисование на форме. Сделал отрисовку линии по клику, то есть кликаем по первому маркеру, по второму и между ними линия. Вообще хотелось бы, что бы при стыковке блоков линию можно было плавно перетаскивать, а не по кликам. Пытался так сделать, но либо линии стираются все, либо не стирается ни одна.

Сейчас думаю попробовать сделать массив с координатами начала и конца линий (которые уже были проведены) и при перемещении блоков перерисовывать все линии из этого массива, стирая уже имеющиеся.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.12.2012, 12:39
Помогаю со студенческими работами здесь

Нужна бесплатная программа для создания блок-схем
Сдесь ошибка и как ее исправить не знаю. Как и чем перевести С++ В Си Что рисует блок схемы по коду какая программа. Искал в гугле,...

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

Создания блок схем
Не могу разобраться в создании блок схем для программ так как не изучали,хелп. #include <fstream> #include <iostream> ...

Создания блок-схем
Как правильно создавать блок-схемы ? Скажите правильно ли я сделал,если нет,то исправьте пожалуйста. Снизу приложен скрин кода и...

Создание блок-схем к программе
//--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { ...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru