![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Самописный частичный аналог TButtonGroup
Германн © (2011-05-27 01:44:00)Подскажите как реализовать перемещение TButton мышкой в пределах TPanel так чтобы в момент отпускания кнопки знать её координаты.
Д2007. WinXP и выше.
Германн (2011-06-10 02:23:00) [1]
> Но конечно, есть разумные пределы... а то так можно и транзисторы
> в процессоре проверять на количество и качество дырок :)
Вот и я про то же. :)
Коду от ПБ я доверяю примерно так же как и коду в VCL.
KilkennyCat (2011-06-10 01:56:00) [2]А тебе там не встречались баги?
Но конечно, есть разумные пределы... а то так можно и транзисторы в процессоре проверять на количество и качество дырок :)
Германн (2011-06-10 01:48:00) [3]
> Слепая вера до добра не доведет-с...
Т.е. и Дельфи не стоит доверять? И перед использованием любой VCL-функции надо изучить её исходники?
KilkennyCat (2011-06-09 07:27:00) [4]
> Эээ. Разбираться в коде Питера Белов - уже значит "разбираться
> в чужом коде"?
Слепая вера до добра не доведет-с...
Германн (2011-06-09 02:36:00) [5]
> меньше разбираться, почему что-то не так, да еще в чужом
> коде.
>
Эээ. Разбираться в коде Питера Белов - уже значит "разбираться в чужом коде"?
KilkennyCat (2011-06-08 10:17:00) [6]Перформ не волшебный. Номер - магический.
только 2 строчки мне больше нравятся - меньше разбираться, почему что-то не так, да еще в чужом коде.
Германн (2011-06-08 02:57:00) [7]
> KilkennyCat © (08.06.11 02:38) [16]
>
> procedure TForm1.MouseDown(..);
> begin
> ReleaseCapture;
> perform(WM_SysCommand, $F012, 0);
> end;
>
> я сие использовал. замена $F012 (перемещение) на $F013..
> $F020 (непомню точно какие) вызывает изменение размеров
> контрола. и положение я нормально отслеживал, чтоб за границы
> не утащить. вроде, ничего заумного не делал.
Не хочу комментировать данное твоё высказывание.
Ты пойди и почитай по ссылке данной LVT.
Там никаких "волшебных" перформов нет!
KilkennyCat (2011-06-08 02:38:00) [8]
procedure TForm1.MouseDown(..);
begin
ReleaseCapture;
perform(WM_SysCommand, $F012, 0);
end;
я сие использовал. замена $F012 (перемещение) на $F013..$F020 (непомню точно какие) вызывает изменение размеров контрола. и положение я нормально отслеживал, чтоб за границы не утащить. вроде, ничего заумного не делал.
Германн (2011-06-08 02:31:00) [9]
> KilkennyCat © (08.06.11 02:29) [14]
>
>
> > Германн © (27.05.11 22:53) [3]
>
> я получал событие.
> к тому же, таким макаром и размеры можно изменять, что удобно.
>
Ты об чём собственно, Костя?
KilkennyCat (2011-06-08 02:29:00) [10]
> Германн © (27.05.11 22:53) [3]
я получал событие.
к тому же, таким макаром и размеры можно изменять, что удобно.
Германн (2011-06-08 01:56:00) [11]
> Германн © (29.05.11 05:24) [12]
>
>
> > Leonid Troyanovsky © (28.05.11 09:18) [8]
>
> Леонид, а не будет с моей стороны слишком большой наглостью
> спросить вас - "А нет ли в вашем архиве столь же простого
> примера от Питера Белова (или ещё от кого-нибудь, уважаемого)
> на тему "Как изменить в рантайме размеры контрола мышкой"?
> "
Хм. Леонид. Неужели вам было так трудно сказать мне, что я дурак и неуч и вообще чукча! :(
Германн (2011-05-29 05:24:00) [12]
> Leonid Troyanovsky © (28.05.11 09:18) [8]
Леонид, а не будет с моей стороны слишком большой наглостью спросить вас - "А нет ли в вашем архиве столь же простого примера от Питера Белова (или ещё от кого-нибудь, уважаемого) на тему "Как изменить в рантайме размеры контрола мышкой"?"
Германн (2011-05-29 01:54:00) [13]
> Leonid Troyanovsky © (28.05.11 09:18) [8]
>
То что надо! Спасибо.
Германн (2011-05-28 21:48:00) [14]
> Leonid Troyanovsky © (28.05.11 09:18) [8]
>
Спасибо, попробую применить.
Германн (2011-05-28 21:47:00) [15]
> Palladin © (28.05.11 09:14) [7]
>
> а почему именно TPanel? есть предназначенные для этого TToolBar,
> TCoolBar
TToolBar, TCoolBar имеют слишком много специфичного, что мешает.
Leonid Troyanovsky (2011-05-28 09:18:00) [16]
> Германн © (28.05.11 02:41) [5]
http://groups.google.com/group/fido7.ru.delphi.chainik/msg/fa26f6a57ab5bc05
--
Regards, LVT.
Palladin (2011-05-28 09:14:00) [17]а почему именно TPanel? есть предназначенные для этого TToolBar, TCoolBar которые позволяют себя конфигурировать до посинения, в том числе и перетаскивать
Германн (2011-05-28 03:05:00) [18]Да. Забыл сказать. Вопрос размещения кнопок реализуется в одной программе. А используются эти кнопки в другой.
Германн (2011-05-28 02:41:00) [19]Ну раз конкретный вопрос не нашел ответа, тогда сформулирую задачу.
На панели нужно в рантайме создать несколько кнопок. Кнопки создаются через PopupMenu или через MainMenu. Но нужно иметь возможность их перемещать. Панель с кнопками может быть расположена либо "снизу", либо сбоку окна.
Этот дизайнерский вопрос решается в конфигураторе.
Разместить панель я могу. Создать кнопки я тоже могу. Но заказчик просит дать возможность ему самому выбирать как размещать кнопки внутри панели.
Германн (2011-05-28 01:22:00) [20]
> han_malign (27.05.11 17:18) [1]
Либо у меня руки кривые, либо что-то еще не так, но мой потомок TButton сообщение WM_NCHITTEST не получает.