Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

А-ля "компонентный" редактор?

268  
Murr патриот08.03.17 18:48
Murr
08.03.17 18:48 

А-ля "компонентный" редактор?


Потребовалось очередное "странное".

Нужно дать юзеру возможность перетащить мышкой репрезентацию чего-то-там с одной панели на другую

и

поместить (подрехтовать) ее в нужную позицию. Возможно потребуется и обратно скинуть.

Операционистика - как мышовая, так и кнопочная, и программная.

Возможность установить размеры - обязательна, ресайзинг по месту - опционален.

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

Все евенты - переместили, ресайзнули, дропнули, селектнули и т.п. - должны быть, но обработчики будут мои.

Типов элементов немного - 2-3 всего... просто их надо програмно разместить на панельке и дать возможность перетянуть на другую, попутно обработав события.


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

Исходники - обязательны.


Знаю, что есть кое-какие возможности в DSL,

но мне кажется что будет маловато для моих задач.


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


Есть у кого подходящая рыба на примете? Желательно - С-шарп, можно - ВБ.НЕТ.


#1 
AlexNek патриот08.03.17 23:28
AlexNek
NEW 08.03.17 23:28 
в ответ Murr 08.03.17 18:48, Последний раз изменено 08.03.17 23:29 (AlexNek)
  moose свой человек10.03.17 22:14
NEW 10.03.17 22:14 
в ответ Murr 08.03.17 18:48, Последний раз изменено 10.03.17 22:36 (moose)

Я бы не заморачивался с drag'n-drop, просто сделал бы две панели, между ними - четыре кнопки: >, >>, <, <<. Пусть проклацает и отметит все, что хочет перетащить, затем нажмет на нужную кнопку, и все перетащится. Будет работать даже если руки дрожат и мышь еще плохо освоил. "Небось, не баре!" (с)

#3 
Murr патриот11.03.17 00:56
Murr
NEW 11.03.17 00:56 
в ответ moose 10.03.17 22:14

сделал бы две панели, между ними - четыре кнопки: >, >>, <, <<.

-----

Угу... Старая формочка под названием Органайзер...

Вот только что-то не могу себе представить как ею разложить на плоскости разноразмерные нарезаемые элементы... хммм

Автомат размещения справляется пока ему дают стандартный лист и не требуют минимизировать отходы.

А об том, что на столе или складе остался кусок от предыдущей нарезки - он просто "не знает".

Тут надо либо полную библиотеку типоразмеров писать (что есть полная глупость), либо дать возможность "передвинуть" подходящие части в начало и резать их из того куска.

Так что только драг-анд-дроп да еще с проверкой граничных условий...

#4 
Murr патриот11.03.17 01:00
Murr
NEW 11.03.17 01:00 
в ответ AlexNek 08.03.17 23:28

Смотрю.

Диаграмки - не совсем то, но за основу - сойдут.

Рабочих, правда, мало...


Да, попутно... Поковырял минут 20 Дроол 3.0. Понравилось, но его вроде забросили. Есть сейчас что того же плана, но живое?

#5 
AlexNek патриот11.03.17 15:11
AlexNek
NEW 11.03.17 15:11 
в ответ Murr 11.03.17 00:56
Вот только что-то не могу себе представить как ею разложить на плоскости разноразмерные нарезаемые элементы...

ну так бы сразу и сказал, что ты хочешь GUI для этой фигни

https://en.wikipedia.org/wiki/Cutting_stock_problem

Не попадалось.

http://www.intechopen.com/download/pdf/5850

https://www.codeproject.com/Articles/706136/Csharp-Bin-Pac...

#6 
  moose свой человек11.03.17 21:56
NEW 11.03.17 21:56 
в ответ AlexNek 11.03.17 15:11
ну так бы сразу и сказал, что ты хочешь ...

0. а мы вообще редко сразу можем объяснить, чего мы хотим

1. и это потому, что мы еще не знаем, чего хотим, просто нам ферово

#7