Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Вопрос очень простой, но ответ я на него пока найти не могу:
Можно ли дать пользователю возможность перемещать объекты на форме с дальнейшим запоминанием положений, чтобы при последующем открытии пользователь видел объекты на тех местах, на которые он их поставил, ну и конечно чтобы была возможность сбросить пользовательские настройки если он сильно заигрался.. Пока не пойму куда копать, может кто сталкивался? |
Re: Перемещение объектов на форме | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Открываешь форму как таблицу, в ней и структура данных есть и сами настройки формы, изобретать ничего не надо.
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Перемещение объектов на форме | |
---|---|
Дмитрий Петров Сообщений: 3071 Откуда: Пермь Дата регистрации: 09.07.2001 |
Я делал класс, который на ините обходит форму и
востанавливает положение и размеры всех контролов на форме. На дестрой сохраняет в локальную дбф. Сейчас поищу На работе не оказалось.. Дома гляну PS А про перетаскивание- в свойствах контролов на форме устанавливаешь DragMode= automatic а у самой формы в методе DragDrop ловишь положение перетаскиваемого объекта
Исправлено 2 раз(а). Последнее : Дмитрий Петров, 30.07.15 12:32 |
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
А подробнее? Можно пример, как мне открыть форму как таблицу при выполнении программы?
|
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Спасибо! Уже понял с чего начать, а изменение размера или поворот сделать в контекстном меню
|
Re: Перемещение объектов на форме | |
---|---|
PaulWist Сообщений: 14625 Дата регистрации: 01.04.2004 |
Моя реплика относилась к :
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
Re: Перемещение объектов на форме | |
---|---|
h.i.a. Сообщений: 4002 Откуда: Мурманск/Спб/Мск Дата регистрации: 18.11.2005 |
А смысл? Это не стандартный GUI и таких реализаций я не помню ни в одной программе. Запоминается обычно: 1. Положение / размер окна (При этом контроллы с настроенным anchor выстраиваются сами в зависимости от размера окна) 2. Положение горизонтальных/вертикальных сплиттеров (но их еще в фоксе нужно для начала запилить самому + организовать взаимодействие с остальными контроллами формы.) 3. Состояние колонок грида: Последовательность, ширина, состояние visible. А таскать по форме всякие кнопки/текстбоксы, да еще сохранять их положение честно говоря не вижу смысла, имхо баловство это. ------------------ |
Re: Перемещение объектов на форме | |
---|---|
Дмитрий Петров Сообщений: 3071 Откуда: Пермь Дата регистрации: 09.07.2001 |
2 h.i.a
Судя по вопросам автора на sql.ru, он собрался блок схемы какие то рисовать. Полигоны, линии. По крайней мере по его вопросам я сделал именно такой вывод |
Re: Перемещение объектов на форме | |
---|---|
h.i.a. Сообщений: 4002 Откуда: Мурманск/Спб/Мск Дата регистрации: 18.11.2005 |
Тогда автору, конечно хоть пару слов потратить, что делает какой-то вариант графического редактора... Чтоб тут телепатию не практиковать.
------------------ |
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Да, вы правильно меня поняли, так и есть мнемосхемы рисовать на форме и ещё сделать возможность масштабирования (тут совсем пока беда) и конечно же количество объектов на форме изначально нет совсем, то есть их нужно создать, это будут обычные кнопки и линии и естественно каждый элемент этой схемы очень важен!
|
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Нет мне не нужен графический редактор и рисовать по сути мне не нужно, мне нужны именно объекты, чтобы можно было например подсвечивать или как-то выделять нужные объекты, при чём 2 варианта, автоматические рисование (так скажем по умолчанию) и пользовательский (чтобы можно было передвинуть элементы в более удобное положение для пользователя (но возможно это и не обязательно, но желательно)
|
Re: Перемещение объектов на форме | |
---|---|
Дмитрий Петров Сообщений: 3071 Откуда: Пермь Дата регистрации: 09.07.2001 |
А в чем конкретно трудности возникли?
Не знаете как добавить объект на форму? Давайте конкркретней |
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Ну вначале этого дела были сложности и такие, сейчас пока работаю, думал может у кого-то был подобный опыт, так скажем обменяться опытом. Но проект большой получается, структуры разные и надо проработать общую логику работы
|
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
не могу понять как мне создать процедуру выхода из ComboBox (MyList1), если создавать как класс, то там нельзя указывать те объекты которых ещё нет.
Исправлено 1 раз(а). Последнее : AngelOKES, 10.08.15 13:51 |
Re: Перемещение объектов на форме | |
---|---|
Igor Korolyov Сообщений: 34580 Дата регистрации: 28.05.2002 |
Был. Не советую. Вообще не советую на фоксе это делать - крайне муторно. И работает медленно уже при паре сотен объектов на форме. Ничего не понял. Что такое "процедура выхода из комбо"? А обращаться к "неизвестным" объектам на форме можно кучей разных способов (по разному тормозящих, кстати, в разных случаях - была тема сравнения скорости такого "непрямого" доступа). GETPEM, Form.Objects/Controls (при том можно по индексу перебирать а можно циклом FOR EACH), EVALUATE() и, наконец, макро. Но ещё раз повторюсь - если в программе на форме будет более сотни подобных "рисованных объектов" то КРАЙНЕ не советую использовать фокс для реализации. И да - масштабирование, прокрутка холста, "выделение объектов" (в т.ч. групповое) - это геморрой с большой буквы Г. ------------------ WBR, Igor |
Re: Перемещение объектов на форме | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
А не попробовать ли , вместо фокса, сразу рисовать на ворде, например. Или поискать, спец проги, бесплатные. Если конечно, стоит серьезная задача. А не "что бы потренироваться" ------------------ |
Re: Перемещение объектов на форме | |
---|---|
AngelOKES Автор Сообщений: 828 Дата регистрации: 08.02.2012 |
Мне необходимо прописать процедуру LostFocus() на объект MyList1, но не в создании класса, а так скажем на лету, я просто не понимаю возможно ли это. В классе я конечно могу прописать все нужные мне процедуры, но хотелось бы узнать есть ли другой путь (мне нужен другой путь!)
Нет в ворде я рисовать умею, есть такой опыт, но всё что я хотел бы реализовать никак не совместимо с вордом, и да пускай объектов будет не то что пару сотен, пускай будет тысяча, но каждый элемент для меня очень важен (отображение детальной информации, поведение при перемещении, выделение цветом и т.д.) Исправлено 1 раз(а). Последнее : AngelOKES, 11.08.15 06:38 |
Re: Перемещение объектов на форме | |
---|---|
Crispy Сообщений: 18571 Дата регистрации: 16.05.2005 |
Можно например попробовать через BINDEVENT() навесить из какого-то заранее имеющегося фиктивного метода. Когда-то делал подобное для создаваемого на лету экземпляра класса. А вообще говоря, в фоксе, как уже и заметили - всего при паре сотен элементов и действительно ведь большие тормоза начинаются. Так что насколько оправдана сама такая задача? ------------------ В действительности все иначе, чем на самом деле. (Антуан де Сент-Экзюпери) Исправлено 1 раз(а). Последнее : Crispy, 11.08.15 07:10 |
Re: Перемещение объектов на форме | |
---|---|
pasha_usue Сообщений: 3650 Откуда: Е-бург Дата регистрации: 06.10.2006 |
BINDEVENT
|
Re: Перемещение объектов на форме | |
---|---|
Аспид Сообщений: 3475 Откуда: Москва Дата регистрации: 01.04.2005 |
Тогда не стоит мучаться. Не взлетит. По определению) Ищи другое. ------------------ |
© 2000-2024 Fox Club  |