Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];

Вниз

Пятое изображение для SpeedButton   Найти похожие ветки 

 
Sunktor ©   (2010-01-20 21:19) [0]

В общем нужна кнопка вроде  SpeedButton только с одним дополнительным изображением появляющимся при наведении курсора.
Может есть простой путь получения кнопки у которой для всех состояний можно добавлять свои изображения?
Или может есть сторонний компонент.


 
Вася   (2010-01-20 22:53) [1]

может что-то вроде TRzBmpButton? :)


 
KilkennyCat ©   (2010-01-21 08:51) [2]


> есть простой путь

создаешь наследника, добавляешь все что хошь.
и задавай вопрос конкретно, а то вначале спидбуттон, потом уже вроде...
И ваще велосипед. А велосипеды все в гугле. Есть такой сайт: www.google.ru


 
Sunktor ©   (2010-01-21 17:40) [3]

Да вобщем то вот такое искал, только по проще - http://www.delphikingdom.com/asp/viewitem.asp?catalogid=1198


 
Starraider   (2010-01-22 13:30) [4]

Скачай себе компонент suiSkin pack. Там есть кнопка с нужными тебе параметрами suiButton


 
oldman ©   (2010-01-22 14:21) [5]

Я делал проще.
Глупо, но просто ввиду экономии.
При наведении мышки менял картинку и все.
При уходе мышки менял обратно.

Глупость состояла в том, что: чтобу не хранить картинки отдельно они болтались на форме с visible:=false
В ресурсы запихивать было лень. Да и не умел, по большому счету. Давно это было...


 
Вася   (2010-01-22 23:45) [6]

а вообще SpeedButton - неоконный компонент.он не может быть поверх оконных.может как и предлагали сделать потомка от уже существующего компонента и самому рисовать как нужно?
только нужно будет определиться от какого - от TButton или от TSpeedButton...


 
Sunktor ©   (2010-01-23 15:06) [7]

2 Starraider :

A single image for consecutive 3 status of button: Normal, Mouse hover, Mouse down. The height and the width of each status must be an odd number.

Где тут пять состояний? А SpeedButton в том пакете вообще нет.
За пакет спасибо, но кнопка такая не годится.

Мне нужно для Tool Bar"a что бы индицировала все возможные состояния:
Отжата,Недоступна,Курсор над кнопкой,Нажата,Зафиксирована

Пока единственный нормальный вариант, это то, что я давал по ссылке.


 
Вася   (2010-01-23 17:42) [8]

> Мне нужно для Tool Bar"a что бы индицировала все возможные состояния:
> Отжата,Недоступна,Курсор над кнопкой,Нажата,Зафиксирована


что-то не припомню, ToolBar это кто?может тогда всё просто вручную отрисовывать как надо в WM_PAINT?сделать глобальную переменную "состояние кнопки" и в зависимости от неё BitBlt нужной картинкой в нужном месте?

а рисунки-то сами есть?я бы попробовал,но рисовать не умею...=(


 
Sunktor ©   (2010-01-24 15:29) [9]

Дело в том, что хоть по приведенной мной ссылке модифицированная SpeedButton может нормально работать только как кнопка, стоит установить стиль в cbsDropDown, начинаются странные косяки, автор видимо не предусмотрел данный вариант использования, а использование стандартных кнопок в этом режиме нарушает целостность дизайна.

2 Вася
"Рисовать" я умею, хотя это и занимает много времени, вот только вкусы у всех разные...
Ну вот например вариант для кнопки записи - http://slil.ru/28539010


 
Вася   (2010-01-25 13:40) [10]

семь состояний?о_О
я пять-то с трудом могу представить.=)
что например подразумевается под "Зафиксирована"?

назовите хотя б какая картинка какому состоянию соответствует...


 
KilkennyCat ©   (2010-01-25 14:16) [11]


> я пять-то с трудом могу представить.=)

1. енабленная кнопка
2. дизабленная кнопка
3. наведенная мышь на енабленное
4. нажатие левой кнопки мыши на енабленное
5. нажатие правой кнопки мыши на енабленное
6. нажатие средней кнопки мыши на енабленное
7.8.9.10.11 нажатие комбинаций кнопок мыши на енабленное
12..100000000 нажатие кнопок мыши при нажатых каких-то клавиш и сочетаний на клаве
потом - увод курсора при нажатых трех кнопках
потом все тоже самое но для дизабленной
потом еще можно в зависимости от наличия модема, времени суток...


 
Sunktor ©   (2010-01-25 14:34) [12]

В целом достаточно 5 состояний:

ImageIndexNormal - ButtonSave1
ImageIndexNormalHot - ButtonSave2
ImageIndexPush - ButtonSave3
ImageIndexCheck - ButtonSave4
ImageIndexDisable - ButtonSave5

Последние две просто были в компоненте, я и под них сделал:

ImageIndexCheckDisable - ButtonSave6
ImageIndexCheckHot - ButtonSave7

Хотя может быть ситуация, когда кнопка хоть и зафиксирована (выбрана -Check) но в данный момент данная функция не активна для большей информированности пользователя.
Не обращайте внимание на сам рисунок, конечно для кнопки сохранения достаточно 4 состояний. Разве что реализовать ее как автосохранение.


 
Sunktor ©   (2010-01-25 15:19) [13]

Вот так это выглядит.
Справа кнопка в стиле cbsDropDown -  http://slil.ru/28544310


 
Sunktor ©   (2010-01-25 15:27) [14]

Или так - http://slil.ru/28544373

По сути важен не рисунок, а как отобразить все возможные состояния кнопки.


 
Вася   (2010-01-26 03:14) [15]

> KilkennyCat ©   (25.01.10 14:16) [11]

о,ужас...о_О

> Sunktor ©   (25.01.10 ...)

не фурычат:

> Приложению не удалось запуститься, поскольку rtl120.bpl не был найден.
> Повторная установка приложения может исправить эту проблему.


и значёк делфи не знакомый(у меня семёрка).


а вот это в том компоненте напрягает:
procedure HotProc(Sender: TObject);        // По этому таймеру проверяем горячая ли кнопка
по какому такому таймеру?таймеры всегда не хорошо...
и если зажать кнопку курсором,то событие OnClick происходит до посинения - тоже мне кажется ничего хорошего...

а "странные косяки при cbsDropDown" в тестовом проекте не заметил...

"зажата" - это типа вдавленная чтоль?)как если нескольким TSpeedButton поставить GroupIndex в 1 и нажимать а них?


 
Sunktor ©   (2010-01-26 14:12) [16]

Эм...
Я так понял, что не устанавливается компонент SpeedButtonCep?
Ну это к автору, у меня всё установилось и работает на CodeGear Delphi 2009, только не так, как мне хотелось бы.

>а "странные косяки при cbsDropDown" в тестовом проекте не заметил...

Потому что в примере используется GradientActionToolBar а не SpeedButtonCep которая естественно на нем размещена быть не может, так как он собирается через ActionManager...

Я и тему то создал, именно потому, что мне нужен аналог этой кнопки для ToolBar"a, и конечно с возможностью использования стиля cbsDropDown...
Ладно, не заморачивайся.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.005 c
2-1263942655
Вася
2010-01-20 02:10
2010.03.28
Можно ли отключить "куб отсечения" в OpenGL


2-1264603718
d.l.
2010-01-27 17:48
2010.03.28
try..finally


15-1263112641
Nic
2010-01-10 11:37
2010.03.28
Соединение из Delphi MSSQL Server через RDP. Как?


3-1237289266
Yurikon
2009-03-17 14:27
2010.03.28
Количество записей в TADOTable


2-1264674919
novichek
2010-01-28 13:35
2010.03.28
Image на переднем плане





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский