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

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

Вопрос по поводу DBGrid-а [D7, Paradox]


Виктор ©   (2009-09-07 15:33:00) 

Добрый день!
У меня вопрос по поводу DBGrid-а, возможно ли отметить несколько строк и заполнить их по одному столбцу текстом который мне нужен.
За рание спосибо.


blackman   (2009-09-07 21:51:00) [1]

Anatoly Podgoretsky ©   (07.09.09 19:53) [14]
Сто пудов :)
Запомнить надо отмеченные, колонку и только потом ...

Использование опции MultiSelect в DBGrid
http://articles.org.ru/cfaq/index.php?qid=1853
DbGrid и множественный выбор
http://articles.org.ru/cn/showdetail.php?cid=8214


Anatoly Podgoretsky   (2009-09-07 19:55:00) [2]

> Виктор  (07.09.2009 17:52:12)  [12]

Надо выполнить запрос или изменить навигационными методами, про грид забудь, в гриде данных нет.


Anatoly Podgoretsky   (2009-09-07 19:53:00) [3]

> clickmaker  (07.09.2009 17:01:10)  [10]

И не получится, при первом перемещение курсора отметка будет снята, надо вводить не в грид.


Виктор   (2009-09-07 17:54:00) [4]

О! теперь я чтото вижу. Спосибо большое, буду дорабатывать.


Виктор   (2009-09-07 17:52:00) [5]

означает, что я например выдиляю чекбоксом несколько строк(такой вареант описан в статье "Разноцветный DBGrid"), и заполняю отдельный столбец в выделенных строках текстом(например "разработка"). таким образом при обновлении DBGrid-а в тех выделенных строках по одном столбцу появляется текст "разработка".


Ega23   (2009-09-07 17:08:00) [6]

 
with DBGrid1.DataSource.DataSet do
begin
 DisableControls;
 try  
    for i:=0 to DBGrid1.SelectedRows.Count-1 do
    begin
      GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
        Edit;
        FieldByName("По одному столбцу").AsString := 'текстом который мне нужен';
        Post;
    end;
 finally
   EnableControls;
 end;
end;


Я бы такое добавил...


clickmaker   (2009-09-07 17:01:00) [7]

> [8] Sergey13 ©   (07.09.09 16:57)

а в екселе можно так сделать? у меня не получилось...


Sergey13   (2009-09-07 16:57:00) [8]

Автор ИМХО хочет выделив несколько записей и начав что-то печатать на клаве, что бы это сразу вводилось во все отмеченные.
Вордово-ексельный подход.


Сергей М.   (2009-09-07 16:57:00) [9]

   with DBGrid1.DataSource.DataSet do
     for i:=0 to DBGrid1.SelectedRows.Count-1 do
     begin
       GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
         Edit;
         FieldByName("По одному столбцу").AsString := 'текстом который мне нужен';
         Post;
       end;
     end;


clickmaker   (2009-09-07 16:50:00) [10]

> 6] Виктор   (07.09.09 16:47)

ни хрена не понятно.
зачем выделять?
и что значит "зополнить несколко ячеек в базу"? их перед этим пользователь набил? ну DataSet.Post; DataSet.ApplyUpdates тогда


Виктор   (2009-09-07 16:47:00) [11]

я имел введу зополнить несколко ячеек в базу через dbgrid перед этим их выделить


clickmaker   (2009-09-07 16:46:00) [12]

> как одновремено их заполнить

что значит "одновременно"?
заполнил датасет - данные отобразились в гриде


Виктор   (2009-09-07 16:44:00) [13]

я понимаю что в dbgrid-e нет данных и что заполнять нужно dataset. вы мне подскажите как одновремено их заполнить.


clickmaker   (2009-09-07 16:12:00) [14]

SelectedRows
только заполнять надо не грид, а подцепленный датасет


Anatoly Podgoretsky   (2009-09-07 16:07:00) [15]

В dbGrid нет данных.


Медвежонок Пятачок   (2009-09-07 15:35:00) [16]

можно


Наверх

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