Текущий архив: 2004.11.07;
Скачать: CL | DM;
ВнизВот сколько в Delphi пользуюсь и только сейчас возник вопрос... Найти похожие ветки
← →
Knight © (2004-10-20 21:31) [0]... а почему ни у каких кнопок нет COLOR?
← →
Rouse_ © (2004-10-20 21:32) [1]Резонный вопрос: а нафига?
← →
Knight © (2004-10-20 21:34) [2]Ну мало ли... а вдруг понадобится... :)
← →
Rouse_ © (2004-10-20 21:35) [3]Хм, обычно когда понадобилось, садятся и делают то что понадобилось (да и делать то там... ;)
← →
Knight © (2004-10-20 21:37) [4]Раз для чего-то кнопку подобрать не мог, так не долго думая бросил на форму Panel и смастрячил кнопку из неё... :)
← →
Mihey_temporary © (2004-10-20 21:39) [5]
> ... а почему ни у каких кнопок нет COLOR?
Возможно, Borland не ведёт майкрософтовскую политику (внедрённый браузер, калькулятор, drivespace, медиаплеер), а оставляет поле для энтузиастов.
← →
Knight © (2004-10-20 21:52) [6]Кстати, вот пришла идея... У чекбокса три состояния: включено, выключено и грей... почему бы и у кнопки не сделать тоже три: нажата, отжата и подсвечена другим цветом - в третьем состоянии кнопка остаётся отжатой, но меняет цвет, что обозначает, например, что из набора данных отобраны соответствующие записи, но присутствует ещё какое-то условие отбора, поэтому данные видны не все... при повторном нажатии это условие скидывается и кнопка переходит в Down - т.е. теперь данные все. Сумбурно, но вроде понятно %)
← →
Rouse_ © (2004-10-20 21:52) [7]Второй логичный вопрос: а как ты COLOR применительно к включенным темам собираешся применить?
← →
Knight © (2004-10-20 22:09) [8]Пример:
Есть две таблицы
Houses - которая содержит названия улиц и домов
Peoples - содержит данные жителей,
(каждый житель прописан в доме из первой таблицы)
На форме две кнопки - [ Дома ], [ Жители ].
Теперь допустим нажата кнопка ДОМА (Down) и в наборе выбран какой-то дом. При нажатии на кнопку ЖИТЕЛИ она подсвечивается, а в набор попадают только те, кто прописан в том доме...
А теперь наоборот выведены все жители и выделен человек по имени Вася Пупкин. При нажатии на кнопку ДОМА она подсвечивается, а в наборе будет отображён дом в котором он живёт... при повторном нажатии она уходит в Down и условие удаляется.
Довольно прикольно... пожалуй я это дело использую... :)
← →
Knight © (2004-10-20 22:37) [9]Получилось...
Положил каждую кнопку TRXSpeedButton на отдельную панель, сделал Flat+Transparent. Если кнопка нажимается и строка дополнительного условия не пуста, то изменяется цвет родительской панели, кнопка подсвечивается... при повторном нажатии или если пустое условие, кнопка просто остаётся нажатой, а у панели ParentColor возврачется в True.
Разврат... но работает, а главное, на форме практически не осталось никаких левых кнопок, едитов, чекбоксов и комбобоксов для ввода условий отбора :)
← →
Gero © (2004-10-20 23:32) [10]
> Knight © (20.10.04 22:37)
Ты на [7] не ответил.
Или тебе пофиг на пользователей XP, использующих темы?
← →
Knight © (2004-10-20 23:46) [11]
> [10] Gero © (20.10.04 23:32)
>
> > Knight © (20.10.04 22:37)
>
> Ты на [7] не ответил.
> Или тебе пофиг на пользователей XP, использующих темы?
Ага... мои проги везде выглядят одинакого... и среди пользователей моих прог извращенцев нет :)
← →
Cobalt © (2004-10-21 01:16) [12]Кнопка - это стандартный элемент управления (ака контрол).
Её внешний вид управляется соотвтетствующей библиотекой (comctrl, кажется).
Вот.
← →
Mirror (2004-10-21 01:32) [13]Люди,а не проще ли сделать свою кнопку? Тогда у вас там и три положения будут, и свойство колор и вообще всё что захотите!
← →
Gero © (2004-10-21 08:20) [14]
> Кнопка - это стандартный элемент управления (ака контрол).
Ну если TButton, то он ComCtrl"овский.
А если, скажем TSpeedButton или TBitBtn, то в них уже борландовская прорисовка, не поддержтивающая темы.
> comctrl, кажется
Да, comctl32.dll.
← →
Rouse_ © (2004-10-21 09:14) [15]> [8] Knight © (20.10.04 22:09)
А чекбокс для чего придуман?
Хотя если тебе всеравно что использовать, то поэксперементируй к примеру с прогрессбаром.
Например:
Выключен: Position = 0;
Грей: Position = 50;
Включен: Position = 100;
:)
Ведь тоже логично?
← →
Skyle © (2004-10-21 09:18) [16]
> ... а почему ни у каких кнопок нет COLOR?
Чтобы любой желающий мог на форуме задать вопрос "А как мне запуздырить зелёную кнопку?"
Надо таких сразу на три буквы посылать (.NET), там это можно.
← →
Григорьев Антон © (2004-10-21 11:12) [17]В VCL вообще очень много недоработок. Например, у TEdit нет некоторых свойств, которые поддерживаются системным оконным классом EDIT, который им инкапсулируется, хотя добавить их - дело двух-трёх строк кода. В TStringGrid есть свойство, позволяющее менять цвет невыбранных ячеек, но выбранные рисуются всегда одним цветом - clHighlight. Почему? ИМХО - недоработка, потому что слишком нелогично. Но самый хит - это отсутствие свойства Color в TScrollBar, хотя весь код, необходимый для поддержки этого свойства, написан. Когда-то я подробно написал об этом здесь: http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1032
← →
Игорь Шевченко © (2004-10-21 11:24) [18]Cobalt © (21.10.04 01:16) [12]
> Её внешний вид управляется соотвтетствующей библиотекой
> (comctrl, кажется).
> Вот.
user32.dll
Knight © (20.10.04 21:31)
> ... а почему ни у каких кнопок нет COLOR?
И погоду предсказывать не умеют. Одно слово - MS гады и маст дай.
← →
DVM © (2004-10-21 11:26) [19]
> Gero © (21.10.04 08:20) [14]
>
> > Кнопка - это стандартный элемент управления (ака контрол).
>
> Ну если TButton, то он ComCtrl"овский.
> А если, скажем TSpeedButton или TBitBtn, то в них уже борландовская
> прорисовка, не поддержтивающая темы.
>
> > comctrl, кажется
>
> Да, comctl32.dll.
comctl32.dll рисует кнопки только при включенных темах в XP.
Если темы не включены этим заведует User32.dll.
← →
Игорь Шевченко © (2004-10-21 11:29) [20]Григорьев Антон © (21.10.04 11:12) [17]
> В VCL вообще очень много недоработок.
"«Проезжая через станцию и будучи голоден в рассуждении чего бы покушать я не мог найти постной пищи. Дьякон Духов».
«Лопай, что дают»… "
(с) Антон Павлович Чехов
← →
Prohodil Mimo © (2004-10-21 11:32) [21]А что мешает использовать TBitBtn?
← →
DVM © (2004-10-21 11:33) [22]
> А что мешает использовать TBitBtn?
некошерная она
← →
Prohodil Mimo © (2004-10-21 11:39) [23]DVM © (21.10.04 11:33) [22]
некошерная она
А панель в качестве кнопки? :о)
Я так понимаю, на то и находятся некоторые компоненты на закладке "стандарт", что они стандартные для винды, и работают (красятся и т.п.) как винда прикажет. А все (почти все) остальные уже с наворотами.
наверно опять непонятно выразился :о)
← →
080D:07BBh © (2004-10-21 13:08) [24]есть колор есть
почитай API про окна кнопка читай окно
← →
хм © (2004-10-21 17:29) [25]>Peoples - содержит данные жителей,
английский хромает :)
← →
Gero © (2004-10-21 17:37) [26]
> некошерная она
Вмысле?
← →
Knight © (2004-10-21 23:10) [27]Во чё надыбал...
LbButtons Suite v.2.4.1
By Leif Bruder. An improved version of TSpeedButton, yet derived from TGraphicControl.
For all versions of Delphi from Delphi 4 (3? BCB? Kylix?) on; may be easily modified to work with earlier versions of Delphi, too.
Second component: TLbButton, same functionality, but a "real" button (i.e. accessible by keyboard).
New properties (not all listed):
Align
Alignment
Color
ColorStyle
LightColor
ShadowColor
Style
WordWrap
New events:
OnMouseEnter
OnMouseExit
Fully functional
Source: Included
Exe-Demo Included
Download: CB3 CB4 CB5 CB6 D4 D5 D6 D7
http://torry.net/vcl/buttons/speedbuttons/lbspeedbutton.zip
Щас пробовать буду... :)
← →
Knight © (2004-10-21 23:29) [28]А вроде, очень даже не плохо... :)
← →
080D:07BBh © (2004-10-22 06:48) [29]Knight
))
← →
Knight © (2004-10-22 09:25) [30]
> [29] 080D:07BBh © (22.10.04 06:48)
> Knight
> ))
Ничего смешного... хоть у кого-то ума хватило это реализовать... Гы :)
Страницы: 1 вся ветка
Текущий архив: 2004.11.07;
Скачать: CL | DM;
Память: 0.52 MB
Время: 0.038 c