powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Может чего-нить типа грида?
8 сообщений из 8, страница 1 из 1
Может чего-нить типа грида?
    #32252592
Devr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня СБилдер 5.0 со стандартным набором компанент+RXlib.
Надо сделать например список пользователей и чтоб напротив пользователя были две галочки, например доступ на запись и чтение.
Кто может подсказать где взять какую-нить компаненту такую или как вобще это реализовать? Список пользователей естественно меняется все время.
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32253235
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В любом компоненте даже DBGrid это делается элементарно.

1. В нужных стобцах твоего грида ставишь шрифт Symbol.
2. Делаешь эти столбцы ReadOnly = true (Грида, а не DataSet`а)
3. У этих столбцов в DataSet ловишь событие OnGetText

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
void __fastcall Tdm::qrDivisionIDGetText(TField *Sender, AnsiString &Text,
      bool DisplayText)
{
  // Так для поля TFieldInteger
  if(Sender->Value ==  1 ) Text =  "Ц" ;

  // Так для любого поля
  if(Sender->AsString ==  "Y" ) Text =  "Ц" ;
 или
  if(Sender->AsString ==  "True" ) Text =  "Ц" ;

  DisplayText = true;
 // В гриде увидешь галочку.
}
//---------------------------------------------------------------------------


Далее обработай событие нажатия клавиши мыши в этом столбце в гриде.
или двойное нажатие
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
if(DBGrid1->SelectedField == MyField){
  DataSet->Edit();
   if(MyField->Value ==  1 ) MyField->Value =  0 ;
   else MyField->Value =  1 ;
 или
   if(MyField->Value ==  "Y" ) MyField->Value =  "N" ;
   else MyField->Value =  "Y" ;
 или
   if(MyField->Value ==  "True" ) MyField->Value =  "False" ;
   else MyField->Value =  "True" ;
  DataSet->Post();
}
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32253501
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но можно заюзать EhLib
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32253502
Фотография JibSkeart
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но можно заюзать EhLib
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32255713
Devr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как так же создать список и напротив каждой позиции 2 галочки в чем-нить типа StringGrid-а? Ну чтоб без БД, а просто список заполнить, поставить галочки и оттуда прочитать.
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32255769
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используй компонент ClientDataSet из стандартной поставки.

Создай вручную все нужные столбцы.
Затем используй функцию CreateDataSet()
Свяжи с DBGrid и спокойно работай.

Если воспльзуешся функцией Open() вот тогда он потребует привязки к базе данных через провайдера или привязки к файлу cds на диске.
А CreateDataSet() создаёт виртуальный набор данных, но работает с ним как с реальным. Можно сортировать по нескольким полям, удалять, добавлять, изменять, производить поиск по составному ключу и т.д.
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32255822
Фотография Cauchy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По-моему, в RXDrawGrid-е можно настроить чтобы были галочки.
К сожалению, подробнее написать не могу так как у меня Builder 6 и для него RXLib я не смог найти (2.75-не хотел компилиться), а так я не помню.
...
Рейтинг: 0 / 0
Может чего-нить типа грида?
    #32255856
Фотография Zmeishe
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> у меня Builder 6 и для него RXLib я не не смог найти
Лови на почту, сейчас сброшу.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Может чего-нить типа грида?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]