Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/29: Рейтинг темы: голосов - 29, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 54

CheckBox в DBGridEh

10.11.2012, 20:23. Показов 6207. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Все привет! Подскажите пожалуйста как можно сделать так чтобы в колонке компонента DBGridEh были не только CheckBox-ы, но и CheckBox-ы c надписью справа
т.е так как изображено на картинке снизу?

0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.11.2012, 20:23
Ответы с готовыми решениями:

Checkbox и TreeView в DBGridEh
Добрый день всем. Помогите разобраться с гридом - строю дерево из БД через MemTable. Выводится, все в порядке. Так же есть столбец с...

DBGridEh
Как сделать, чтобы при активной строки в DBGridEh1 отображалась необходимая строчка в DBGridEh2. Есть две таблицы в первой хранится...

DBGridEh
Добрый вечер! Объясните, пожалуйста, девушке-чайнику.. Прочитала кучу статей и все равно не поняла.. Есть таблица, соединена через...

6
Эксперт Pascal/Delphi
 Аватар для droider
4883 / 2819 / 863
Регистрация: 04.10.2012
Сообщений: 10,257
10.11.2012, 22:15
Вы хотели сказать слева? Справа надписи размещаются по умолчанию.
Свойство Alignment определяет положение текста в CheckBox. Выставите его в LeftJustify
0
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 54
10.11.2012, 23:34  [ТС]
Пробовал, не получается(( У колонки тип String выстовил checkBoxes := true, keylist = checked|nonchecked. С галочками всё нормально, ставятся и убираются, но вот текст не присваивается.
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
10.11.2012, 23:35
Цитата Сообщение от droider Посмотреть сообщение
Вы хотели сказать слева? Справа надписи размещаются по умолчанию.
Свойство Alignment определяет положение текста в CheckBox. Выставите его в LeftJustify
Автор сказал то что хотел сказать.
Будьте внимательны - это TDBGridEh. В ячейках гриды с чекбоксами нет и не может быть надписей. Ни слева, ни справа. Свойство Alignment "не имеет эффекта" (как говорят за бугром).

Единственный способ (кроме как ломать исходники), ИМХО, это визуально объединить колонки, где в одной чекбокс, в другой - надпись к нему.
0
0 / 0 / 0
Регистрация: 10.04.2010
Сообщений: 54
10.11.2012, 23:58  [ТС]
Я тоже думаю что нужно колонки объеденять. Я просто думал что всё таки есть способ при котором можно хранить checkbox- ы и надписи.
0
Эксперт Pascal/Delphi
 Аватар для droider
4883 / 2819 / 863
Регистрация: 04.10.2012
Сообщений: 10,257
11.11.2012, 00:41
Можно еще создать отдельно поле в DBGrideh и разместить на нем компоненты DBCheckbox'ы

Добавлено через 22 минуты
Будьте внимательны - это TDBGridEh.
Я заметил.
Предлагаю сделать так:
1.создайте в DBGridEh отдельное поле (или используйте имеющееся. На Ваше усмотрение) и разместите на нем компоненты DBCheckBoxEh;
2. Свяжите DBCheckBoxEh с полем таблицы, с которым он должен работать - укажите соответственно в свойствах DataSource и DataField;
3. Прописывайте Вашу надпись CheckBox'а и меняйте ее положение.

Добавлено через 5 минут
Не нужно усложнять до объединения колонок
0
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
11.11.2012, 10:07
droider, прошу прощения, конечно, но совет несколько мутноват. Я не про метод вообще - он то как раз более-менее нормальный, а про формулировку, которая людям, не сталкивавшихся с этим мало чего даст.
разместите на нем компоненты DBCheckBoxEh
Неясно. Их должно быть много? На каждую ячейку в колонке? И как можно "разместить" какой-то компонент на гриде? Тоже ведь требует разъяснений.
В третьем тоже темнота: как положение надписи менять? И почему только надписи?

Но в целом этот метод (широко известный в узких кругах) не приемлем из-за артефакта.
Для изменения статуса чекбокса нужно ткнуть в ячейку и только затем второй щелчок меняет статус.
Этот эффект проявляется и при клавиатурном изменении статуса. Ну, это и понятно - инородный компонент, каким является DBCheckBoxEh, требует вначале получить фокус ввода и только потом он принимает команды.
В штатном режиме статус чекбокса в ячейке меняется от первого щелчка.
И, второе, (это если используется один компонент на колонку) что в ячейке, которая не в фокусе ввода нужно рисовать вместе и чекбокс (DrawFrameControl) и ту самую надпись (DrawText). Усложнение? Очевидно.

Хотя, по результатам испытаний, объединение чекбокса и надписи по вашему совету (с некоторыми дополнениями) менее трудоемкий, если не помешает упомянутый выше эффект, чем объединение заголовков. В этом случае даже HeaderControl толком нельзя прикрутить к гриде (коряво получается, а еще и геморр, если нужно оставлять возможность менять ширину колонок).
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.11.2012, 10:07
Помогаю со студенческими работами здесь

DbgridEh
В дб грид через связку query + datasourse выводятся значения из бд, mssql, вопрос такой: в дбгриде отображаются строки...

DBGridEh
Подскажите как сделать нумерацию строк в DBGridEh (DBGride)? Не отдельным столбцом, а в том где находится треугольник активной строки.

Проблема с DBGridEh
Подскажите как можно создать токой вид DBGridEh смотрел демку но так нечего и не понял или если есть литература какая может...

Кодировка в DBGridEh
При добавлении записи в Access в DBGridEh выводится это:

+ Delphi DbGridEh
Добрый день уважаемые программисты! Прошу помочь решить проблему. Пишу программу учёта денежных средств. Есть таблица: Код Наименование...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru