Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Несколько вопросов по StringGrid [D7, XP]


Страницы:   1 2 3 4 5

uno-84 ©   (2008-07-02 08:41:00) 

Здравстуйте! У меня несколько вопросов по StringGrid, я добавляю в него записи

with StringGrid1 do
          begin
             RowCount := k+1;
             for i := 1 to RowCount do
             begin
                  if FieldByName('MESSAGE_IMPORTANCE').AsString = 'T' then StringGrid1.Cells[0, i] := '!' else StringGrid1.Cells[0, i] := '';
                  if FieldByName('MESSAGE_ATTACH_COUNT').AsInteger > 0 then StringGrid1.Cells[1, i] := FieldByName('MESSAGE_ATTACH_COUNT').AsString
                     else StringGrid1.Cells[1, i] := '';    
                  if FieldByName('MESSAGE_ORIGINALMSG').AsString > '' then StringGrid1.Cells[2, i] := 'Ответ' else StringGrid1.Cells[2, i] := '';
                  if FieldByName('MESSAGE_NOTIFY').AsString = 'T' then StringGrid1.Cells[3, i] := '+' else StringGrid1.Cells[3, i] := '-';
                  if FieldByName('MESSAGE_TYPE').AsString = 'R' then StringGrid1.Cells[4, i] := 'Извещение о прочтении'
                     else
                     begin
                          if FieldByName('MESSAGE_WORK_TYPE').AsString = 'T' then
                          begin
                          StringGrid1.Cells[5, i] := FieldByName('MESSAGE_WORK_PRO').AsString + '%';
                          StringGrid1.Cells[4,i] := 'Служебное задание';
                          end
                           else
                           begin
                           StringGrid1.Cells[4, i] := 'Обычное сообщение';
                           StringGrid1.Cells[5, i] := '';
                           end;
                     end;

                  StringGrid1.Cells[6, i] := FieldByName('USER_NAME1').AsString;
                  StringGrid1.Cells[7, i] := FieldByName('MESSAGE_RECIPIENTS_NAMES').AsString;
                  StringGrid1.Cells[8, i] := FieldByName('USER_NAME').AsString;
                  StringGrid1.Cells[9, i] := FieldByName('MESSAGE_SUBJECT').AsString;
                  StringGrid1.Cells[10, i] := FieldByName('MESSAGE_SEND_DATE').AsString;
                  StringGrid1.Cells[11, i] := FieldByName('MESSAGE_RECEPT_DATE').AsString;
                  StringGrid1.Cells[12, i] := FieldByName('MESSAGE_READ_DATE').AsString;
                  StringGrid1.Cells[13, i] := FieldByName('MESSAGE_ID').AsString;
            Next;
            end;
1. Можно ли вставить в StringGrid1.Cells[14, i] CheckBox и как отслеживать поставлен чек или нет?
2. В Cells[5, i] нежен прогресс бар или что-то в этом роде, для визуального представления процента?
3. Как сделать так что-бы записи писались по центру ячейки?
Подскажите пожалуйста.
Заранее спасибо


Ega23   (2008-07-02 10:44:00) [61]


> Он за денежку?
>


Да. Чё-то около $600.


_Guest_   (2008-07-02 10:43:00) [62]


> Ega23 ©   (02.07.08 10:38) [20]
>QuantumGrid от devExpress

Он за денежку?


Ega23   (2008-07-02 10:38:00) [63]


> _Guest_   (02.07.08 10:35) [18]


QuantumGrid от devExpress


Игорь Шевченко   (2008-07-02 10:36:00) [64]


> Если никпик не сорвётся, то там об этом и поговорим


благими намерениями вымощена дорога в ад. :)


_Guest_   (2008-07-02 10:35:00) [65]


> Ega23 ©   (02.07.08 10:24) [15]
> Какую конкретно
> функциональность ты хочешь получить? перечисли, пожалуйста.
>

XStringGrid позволяет выравнивать информацию в ячейках, красить их и вешать на столбец внешний редактор, их несколько от простого текстового до чеклистбокса. Этим меня он устраивает, я даже переживу отсутствие многострочности в ячейках. Понятно, что все это можно реализовать и в обычном TStringGrid как в [1], но на порядок или на два писать больше придется. Мне не хватает только дерева с узлами в одном из столбцов. Причем сворачивание/разворачивание узлов иметь хорошо, но в моем случае не обязательно. Но видеть что куда входит надо и одними отступами, по-моему, не обойтись.


Ega23   (2008-07-02 10:33:00) [66]


> а чем плохо редактировать в гриде ?


Э нет, я - пас. Если никпик не сорвётся, то там об этом и поговорим.  :))


Игорь Шевченко   (2008-07-02 10:32:00) [67]

а чем плохо редактировать в гриде ?


Ega23   (2008-07-02 10:24:00) [68]


> Хотел новую тему создать, но спрошу здесь: никто не слышал
> о компоненте, чтобы и как таблица был развит, как в [10],
>  и с деревом мог работать, как TVirtualStringTree? А то
> замучался в StringGrid'ах узлы реализовывать.
>


Какую конкретно функциональность ты хочешь получить? перечисли, пожалуйста.


Ega23   (2008-07-02 10:23:00) [69]


> Может чтобы выводить информацию в более удобоваримой для
> пользователя форме, может осуществить какие-либо проверки
> на вводе прежде чем информация попадет в базу, а может и
> еще что.


Всем этим обладает TDBGrid. А TStringGrid тебе ещё долго придётся точить напильником. ОЧЕНЬ долго.


_Guest_   (2008-07-02 10:22:00) [70]


> Ega23 ©   (02.07.08 10:16) [11]
> Но то, что TDBGrid чайники начинают считать средством редактирования > > TTable - это есть плохо.

Согласен, хотя и чайник :)

Хотел новую тему создать, но спрошу здесь: никто не слышал о компоненте, чтобы и как таблица был развит, как в [10], и с деревом мог работать, как TVirtualStringTree? А то замучался в StringGrid'ах узлы реализовывать.


Плохиш   (2008-07-02 10:18:00) [71]


> _Guest_   (02.07.08 10:13) [10]


> > ы из какого-то датасета? Почему тогда не DBGrid?
>
> Может чтобы выводить информацию в более удобоваримой для
> пользователя форме, может осуществить какие-либо проверки
> на вводе прежде чем информация попадет в базу, а может и
> еще что.

Может стоит, для начала, материальную часть изучить?


Ega23   (2008-07-02 10:16:00) [72]


> Ну что-ж, прокурор (обвиняющий) начинает судебные прения
> сторон. Начинай. 8-)


Да ну. Неохота.
Но то, что TDBGrid чайники начинают считать средством редактирования TTable - это есть плохо.


_Guest_   (2008-07-02 10:13:00) [73]


> Sergey13 ©   (02.07.08 09:46) [2]
> Я так понимаю что твои FieldByName-
> ы из какого-то датасета? Почему тогда не DBGrid?

Может чтобы выводить информацию в более удобоваримой для пользователя форме, может осуществить какие-либо проверки на вводе прежде чем информация попадет в базу, а может и еще что.


>  [0] uno-84   (02.07.08 08:41)

Многое из того что ты хочешь, реализовано в наборе компонентов XStringGrid, ссылку не вспомню, но яндекс их находит. Колупаю его с прошлой недели, глюков пока не заметил.


Sergey13   (2008-07-02 10:12:00) [74]

> [8] Ega23 ©   (02.07.08 10:06)

Ну что-ж, прокурор (обвиняющий) начинает судебные прения сторон. Начинай. 8-)


Ega23   (2008-07-02 10:06:00) [75]


> Хочешь поговорить об этом? Опять?!!!


(с надрывом)  Да!!! Это такие как ты виноваты!!!


Sergey13   (2008-07-02 10:02:00) [76]

> [6] Ega23 ©   (02.07.08 10:00)

Хочешь поговорить об этом? Опять?!!!
8-)


Ega23   (2008-07-02 10:00:00) [77]


> Смысла просто не видел в DBGride, мне надо бало просто визуально
> представить информацию, не изменений ни коких либо опереций
> проводить над ней не надо не надо, поэтому выбрал StringGrid,
>  как более простой


пацталом.
Вот оно, тлетворное влияние апологетов редактирования в гриде.


uno-84   (2008-07-02 09:56:00) [78]

Выбрал лыжи)))))) и остался дома)))))


Sergey13   (2008-07-02 09:53:00) [79]

> [3] uno-84   (02.07.08 09:51)

Ну так, по аналогии, ты выбрал в качестве транспорта лыжи. Причем в городе. 8-)


uno-84   (2008-07-02 09:51:00) [80]

Смысла просто не видел в DBGride, мне надо бало просто визуально представить информацию, не изменений ни коких либо опереций проводить над ней не надо не надо, поэтому выбрал StringGrid, как более простой


Страницы:   1 2 3 4 5

Наверх

Титульная страница Поиск, карта сайта Написать письмо