|
|
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Добрый день. Ребят, создаю в рантайме на скроллбоксе спидбаттоны) создаю их сразу же Код: pascal 1. Нужна возможность курсором перетаскивать их вверх вниз, менять местами, короче. В принципе на mouse move сделал привязку к курсору, и двигаю кнопку. Двигаю так: Код: pascal 1. 2. 3. 4. 5. Но по завершению, когда передвинул и отжимаешь кнопку мыши, то срабатывает onClick этой кнопки, за счет того что курсор на нём и кнопка нажата. Пробовал на время перемещения выставлять SBTN[SensorTag].Enabled := False; На MouseUp enabled := true; Но всё ровно срабатывает onclick. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:15 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
19.10.2018 13:15, Tech N9ne пишет: > Но всё ровно срабатывает onclick. как только начал тащить, выставь BitButton1.OnClick := nil; а как закончишь тащить, верни назад BitButton1.OnClic := BitButton1Click; Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:23 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, Можно перехватывать WM_NCHITTEST, и передавать ему HTCAPTION... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:24 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий19.10.2018 13:15, Tech N9ne пишет: > Но всё ровно срабатывает onclick. как только начал тащить, выставь BitButton1.OnClick := nil; а как закончишь тащить, верни назад BitButton1.OnClic := BitButton1Click; Не помогло) zinpubTech N9ne, Можно перехватывать WM_NCHITTEST, и передавать ему HTCAPTION... Ам, можно чутка по подробнее?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:32 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Эх ладно... Придется двигать не левой кнопкой мыши)) сделал на VK_MBUTTON ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:37 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:39 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
19.10.2018 13:32, Tech N9ne пишет: > Не помогло) как делал? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 13:43 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Мимопроходящий19.10.2018 13:32, Tech N9ne пишет: > Не помогло) как делал? на mousedown задавал nil; на mouseup указывал процедуру онклика в mousemove двигал кнопку но не помогло. Мне кажется из-за того, что срабатывает mouseup в котором присваивается onclick и только потом срабатывает onclick ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 14:15 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Tech N9ne, мне ведь что бы начать двигать, нужно нажать на кнопку и потянуть. при отпускании кнопки onclick происходит, потому что я mousedownИЛ её) по этому пытался дать enabled кнопки false; но опять же, сначала mouseup в котором уже enabled true! И только потом onclick ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 14:20 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Могу конечно сделать костыль, что бы в MOUSEUP, передавалось : SetCursorPos() и отвести курсор от кнопки, тогда onclick не сработал бы Но надеюсь что есть другой вариант)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 14:23 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Извиняюсь что пишу не одним сообщением. Не привык к форумам, где нет возможности редактировать сообщение. Если что delphi 7, win 7, кнопки alphaskins. Сторонние компоненты мне не подойдут, интерфейс будет не тот, на который рассчитываю) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 14:28 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
Tech N9neЕсли что delphi 7, win 7, кнопки alphaskins. а ты выше описанные советы на стандартных бутонах пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 16:45 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
ДокTech N9neЕсли что delphi 7, win 7, кнопки alphaskins. а ты выше описанные советы на стандартных бутонах пробовал? Дело не в скинах, я просто не могу правильно придумать перемещение кнопок. Наверное буду создавать на сроллбоксе панельку и в нее кнопку, align alright будет возможность таскать панельку вверх вниз, вместе с этой кнопкой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 17:00 |
|
||
|
Перетаскивание кнопки(run-time), вверх-вниз, курсором мыши
|
|||
|---|---|---|---|
|
#18+
поставь на форме чекбокс "Режим редактирования". и всё. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.10.2018, 17:02 |
|
||
|
|

start [/forum/topic.php?fid=58&tid=2040246]: |
0ms |
get settings: |
11ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
184ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 245ms |
| total: | 543ms |

| 0 / 0 |
