Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Вниз

Гафическое связывание таблиц   Найти похожие ветки 

 
\/iKTOR   (2007-08-01 12:50) [0]

Доброго дня
Меня интересует такой вопрос, как сделать окно, содержащее несколько таблиц, и связи между ячейками в виде линий как на рисунке
http://img255.imageshack.us/img255/5195/16051722uc2.jpg
тоесть чтобы при перетаскивании каждой таблице связи оставались и перемещались за таблицами.
Меня интересует общие принцыпы такой организации, тоесть каждой ячейке нужно создать точку привязки а потом задать линию, которая будет соединять две выбранные точки? И как такая линия будет вести себя в реале?
Подобное представление используется в редакторах баз данных типа MySQL.
Текст программы писать не нужно, просто как вы это себе представляете вообще.
Спасибо.


 
Плохиш ©   (2007-08-01 12:52) [1]


> И как такая линия будет вести себя в реале?

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


 
Dib@zol ©   (2007-08-01 12:55) [2]

Определяй координаты каждой нужной точки относительно главного окна, а на сообщение о перерисовке формы отвечай циклом из MoveTo/LineTo.


 
\/iKTOR   (2007-08-01 12:59) [3]

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


 
\/iKTOR   (2007-08-01 13:03) [4]

Dib@zol
Тоесть грубо говоря нужно сделать вычисление координаты на главном окне исходя из координат самой таблицы и точки привязки линии, ясно, а как всеже насчет динамики ее поведения?


 
Dib@zol ©   (2007-08-01 13:05) [5]

> а как всеже насчет динамики ее поведения?

Меняешь координаты и посылаешь запрос на перерисовку окошка. А в чём проблема?


 
\/iKTOR   (2007-08-01 13:19) [6]

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


 
Плохиш ©   (2007-08-01 13:21) [7]


> \/iKTOR   (01.08.07 13:19) [6]
> Ну координаты сами должны вычисляться

В программировании нет такого понятия "сами должны вычисляться"...


 
\/iKTOR   (2007-08-01 13:26) [8]

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


 
Сергей М. ©   (2007-08-01 13:59) [9]


> \/iKTOR   (01.08.07 12:50)


Возьми в кач-ве готового средства для такого рода граф.представления компонент TdxFlowChart из состава пакета DevExpress.


 
\/iKTOR   (2007-08-01 14:20) [10]

Сергей М.
Спасибо за наводку.
Жаль что у меня нет русского описалова на этот пакет и компонент в частности,  ну да ладно поищем.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.052 c
2-1185778225
snake-as
2007-07-30 10:50
2007.08.26
Помогите с освоением ООП


5-1159188378
Rat Rat
2006-09-25 16:46
2007.08.26
Перерисовка, TCanvas и стандартные компоненты.


2-1185858542
tytus
2007-07-31 09:09
2007.08.26
Скорость выполнения запроса


2-1185038984
Ivolg
2007-07-21 21:29
2007.08.26
TCPServer и TCPClient


8-1163934187
Николай_Москва
2006-11-19 14:03
2007.08.26
Простая задачка - как лучше делать (наложение графики)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский