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

Вниз

Игнорировать нажатие клавиш мыши для CheckBox   Найти похожие ветки 

 
Macho   (2005-10-03 04:56) [0]

Подскажите, пожалуйста, как отучить CheckBox реагировать на нажатие клавиль мыши.


 
begin...end ©   (2005-10-03 08:52) [1]

Сабклассинг?


 
MBo ©   (2005-10-03 08:57) [2]

А зачем нужен такой CheckBox?
может, просто enabled в False?


 
y-soft ©   (2005-10-03 11:04) [3]

>begin...end ©   (03.10.05 08:52) [1]
Сабклассинг?

Проще. Стиль окна не BS_AUTOCHECKBOX или BS_AUTO3STATE, а BS_CHECKBOX или BS_3STATE - тогда изменения состояния при клике мышью не будет происходить автоматически...

Правда, смысл таких вывертов не очень понятен - существует же TCheckBox.Enabled, как верно отметил MBo ©...


 
Antonn ©   (2005-10-03 14:12) [4]

y-soft ©   (03.10.05 11:04) [3]
Правда, смысл таких вывертов не очень понятен - существует же TCheckBox.Enabled, как верно отметил MBo ©...

он выглядит "бледновато" на фоне других элементов.


 
MBo ©   (2005-10-03 14:27) [5]

>он выглядит "бледновато" на фоне других элементов.

CheckBox  - элемент управления, предназначен для пользовательского ввода.
Уж если появилось желание использовать CheckBox способом нетрадиционной ориентации- пусть юзер это видит, в стандартном UI недоступные к управлению элементы как раз обычно делают бледнее.

Если этот, если можно так сказать, "элемент управления" нужен только для индикации - нисего не мешает использовать DrawFrameControl


 
y-soft ©   (2005-10-03 14:48) [6]

Ох уж эти "пользовательские" интерфейсы... Иной раз такого нагородят, что и не поймешь с ходу, как пользоваться :)

CheckBox с нестандртным поведением, особенно внешне неотличимый от родного Winows"кого скорее всего вызовет у пользователя раздражение: "вроде бы выглядит, как обычно, а на мышь/клавиатуру не реагирует; верно, программа глючит" :)

А так, пожалуйста: средств для кастомизации чекбокса много - и средствами Delphi, и средствами WinAPI (благо функциональность у него небогатая, нетрудно даже "с нуля" написать) , помнится даже Borland свой фирменный писал еще во времена BPW, до сих пор кое где используется через BWCC32.dll...


 
Antonn ©   (2005-10-03 15:11) [7]

сам сталкивался с подобным.
в программе есть CheckBox, который подключал файл. Если файла нет, он должен был оставать "ненажатым" все время.


 
MBo ©   (2005-10-03 15:21) [8]

>он должен был оставать "ненажатым" все время
Он должен находиться в явно видимом запрещенном состоянии.


 
Antonn ©   (2005-10-04 03:37) [9]

MBo ©   (03.10.05 15:21) [8]
Он должен находиться в явно видимом запрещенном состоянии.

во время работы помещаю нужный файл. CB в enabled:=false, как мне поставить галку?


 
MBo ©   (2005-10-04 06:53) [10]

>Antonn ©   (04.10.05 03:37) [9]
Вот когда помещаешь файл, и разрешай CheckBox.


 
Antonn ©   (2005-10-04 09:11) [11]

MBo ©   (04.10.05 6:53) [10]
файл помещается не из программы. Точнее: программка работает, пользователь скачивает файл и ложит в нужную директорию. В настройках программы ставит этот CB и все. Если файла нет, CB не будет "чекаться".


 
ANB ©   (2005-10-04 10:51) [12]


> Antonn ©   (04.10.05 09:11) [11]

- вот в обработке "чеканья" проверяешь наличие файла, если его нет, то ругаешься сообщением и выключаешь обратно (Checked := False). Какие проблемы ? Все равно не очень хорошее решение - заставлять пользователя класть файл в нужную папку ручками.


 
Плохиш ©   (2005-10-04 11:09) [13]


> ANB ©   (04.10.05 10:51) [12]

Отвратительное решение - позволять пользователю нажимать туда, куда в данный момент нажимать нельзя, и после этого ещё и ругаться на него. Mbo сказал запрешать, вот и запрещайте!


 
Antonn ©   (2005-10-04 12:55) [14]

ANB ©   (04.10.05 10:51) [12]
- вот в обработке "чеканья" проверяешь наличие файла, если его нет, то ругаешься сообщением и выключаешь обратно (Checked := False). Какие проблемы ?

меня "уговаривают" что нужно ставить в enabled:=false. у меня никаких проблем. Если файла нет, CB остается пустым.

Все равно не очень хорошее решение - заставлять пользователя класть файл в нужную папку ручками.
это ему надо. И никто не заставляет, просто есть возможность скачать файл и положить в каталог для расширения возможностей. Программа и без этого файла нормально работает.

Плохиш ©   (04.10.05 11:09) [13]
Отвратительное решение - позволять пользователю нажимать туда, куда в данный момент нажимать нельзя, и после этого ещё и ругаться на него.

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


> Mbo сказал запрешать, вот и запрещайте!

уже бегу и прыгаю...



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

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

Наверх





Память: 0.49 MB
Время: 0.039 c
3-1129651139
KoanMu
2005-10-18 19:58
2005.12.04
отображение новой записи с AUTOINC полем


4-1128194078
Хинт
2005-10-01 23:14
2005.12.04
EditBox и PasswordChar (в АП процесса)


1-1131535708
Goast
2005-11-09 14:28
2005.12.04
Проблема с Image


2-1132075726
KIM
2005-11-15 20:28
2005.12.04
поток и объявление процедуры


5-1114000303
Aleksandr.
2005-04-20 16:31
2005.12.04
Как можно сделать со своими объектами, чтобы они были доступны





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский