Heeelp: VCL, C++Builder, drag-drop

3 отговора 70 прегледа
#1

Heeelp: VCL, C++Builder, drag-drop

Здравейте,
Моля ви за помощ. Говоря за VCL/C++Builder, TForm,TPanel,drag-drop

При операциите за влачене, се разкарва напред-назад не компонентата
(TPanel-a), а една квадратна прозрачна (transparent) рамка ,която е фактически
фрамето на панела. Как става това ? Аз мога да влача целия панел, ама неискам.
Процесът автоматизиран ли е през методите и пропертитата на компонентите,
или трябва да го "бродирам" на ниско ниво.
Трябва ми, щото искам да си направя собствена компонента, която да я
ползувам като някакъв плуващ toolbox, с набутани в него други работи.

Благодаря предварително.

Отговор
в отговор на Pavel #2

Re: Heeelp: VCL, C++Builder, drag-drop

Хм. доколкото разбирам, искаш да си правиш собствен, скачващ се (dockable) контрол. Това е Drag&Dock и е малко по-различно от Drag&Drop. Общо взето нещата са автоматизирани и поведението, за което говориш е стандартното в случая. Можеш, разбира се, да го контролираш, като установиш съответните свойства (DockSite, DragMode, ...) и прехванеш съответните събития (OnStartDock, OnDropDock, OnDockOver). Виж по-надолу май имаше тема по въпроса. Виж и хелпа за тез неща, както и примерния порект за скачване в Demos директорията. Успех!

Mixy
Отговор
в отговор на Mixy #3

Re: Heeelp: VCL, C++Builder, drag-drop

Аз немога да отговоря на въпроса, но според мен човека пита за друго - при влачене иска вместо да се влачи целия му панел да се влачи някакъв правоъгълник (пунктиран) или поне така да се вижда...
и като го пусне - панел-а да се премести там. т.е.

Отговор
в отговор на mole. #4

Re: Heeelp: VCL, C++Builder, drag-drop

Аз пък разбрах, че иска точно обратното. Това с рамката си е стандартното поведение. Поне при мен е така, но може да зависи и от версията и настройките на ОС.

Mixy
Отговор