Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.52 MB
Время: 0.033 c
9-1089190934
BladeMaster
2004-07-07 13:02
2004.11.07
BitBlt и прозрачность


14-1098194347
Ega23
2004-10-19 17:59
2004.11.07
Армейское. Зацепило сильно.


14-1097805547
Думкин
2004-10-15 05:59
2004.11.07
С днем рождения! 15 октября


1-1098358350
Сайбель Алексей
2004-10-21 15:32
2004.11.07
Выпадающее меню


1-1098647524
MegaBonus
2004-10-24 23:52
2004.11.07
Почему замедляется работа процедуры?




   Наверх