Вниз
Скачать: CL | DM;

как определить - выделенна запись в таблице или нет   Найти похожие ветки 

← →
-=snoop=- ©   (2005-07-04 09:35) [0]

привет всем, есть грид у которого включен мультиселект, в цикле перебираю все записи, нужно отработать только те, которые выделенны, как это проверить?


← →
Digitman ©   (2005-07-04 09:41) [1]

property TCustomDBGrid.SelectedRows: TBookmarkList;

Specifies a set of bookmarks for all the records in the dataset that correspond to rows selected in the grid.


← →
ANB ©   (2005-07-04 09:47) [2]

Оптимально так :

 if (ShowDialog("Подтвердите"
 , "Удалить выделенные объекты Oracle из проверочного эталлона ?"
 , sdiConfirm, ["&Да", "&Нет"]) <> 1) then Exit;
 // Переберем все выделенные
 n := grOraObjects.SelectedRows.Count - 1;
 if (n >= 0) then for i := 0 to n do begin
  dm.dsOraObjects.GotoBookmark(Pointer(grOraObjects.SelectedRows.Items[i]));
  dm.dsOraObjects.Delete;
 end else dm.dsOraObjects.Delete;

Еще есть IsSelected, но его не так удобно юзать + медленнее


← →
Johnmen ©   (2005-07-04 10:01) [3]

>ANB ©   (04.07.05 09:47) [2]

А в чём оптимальность ?
Зачем if ? Зачем Delete ?

Да и вообще, пример в F1 есть.


← →
ANB ©   (2005-07-04 10:17) [4]


> Johnmen ©   (04.07.05 10:01) [3]
- это я лишнее не выкинул из кода.


← →
Johnmen ©   (2005-07-04 10:25) [5]

>ANB ©   (04.07.05 10:17) [4]

А.... :)


← →
Digitman ©   (2005-07-04 10:27) [6]


> лишнее не выкинул из кода


и недовыкинул)


← →
-=snoop=- ©   (2005-07-04 11:03) [7]

for i := 0 to DBGrid1.SelectedRows.Count-1 do
       begin
         GotoBookmark(pointer(form1.DBGrid1.SelectedRows.items[i])) ;
       end;
пишет ошибку типа((

GotoBookmark, как нужно объявить как TDataSet или как? блин парюсь


← →
Ega23 ©   (2005-07-04 11:10) [8]


    SaveLocation:=DMpas.RQPers.FieldByName("PersID").AsInteger;

    With rxgPersonnel.DataSource.DataSet do
     begin
      try
        DisableControls;

        for i:=0 to rxgPersonnel.SelectedRows.Count-1 do
         begin
          Application.ProcessMessages;
          GotoBookmark(Pointer(rxgPersonnel.SelectedRows.Items[i]));
          ss:="exec S_SchedSpec @mode=51, @PersID="+
              ValX(DMpas.RQPers.FieldByName("PersID").AsInteger,",")+
              "@ModeFl="+ValX(ModeFl,",")+
              "@UserPersID="+ValX(SessInfo.PersId,",")+"@UserWorkCod="+ValX(SessInfo.Workcod,",")+
              "@DatOut="+ValX(DatOut);
          QuExec(DMpas.RQTemp,ss);
         end;

        Locate("PersID",SaveLocation,[]);
      finally
       EnableControls;
      end;//try
     end;
    rxgPersonnel.SelectedRows.Clear;


Вполне работающий код...


← →
Johnmen ©   (2005-07-04 11:11) [9]

Тут дело такое, либо париться, либо посмотреть пример в F1.
Кто что больше предпочитает...:)


← →
-=snoop=- ©   (2005-07-04 11:14) [10]

смотрел в F1 (((
сделал)))


← →
Digitman ©   (2005-07-04 11:20) [11]


пишет


"Писатель ! Ильф и Петров !" (с)


> ошибку типа


типа типа "чиста канкретна" ?)


← →
-=snoop=- ©   (2005-07-04 11:24) [12]

не конкретно)) а "типа" ))


← →
msguns ©   (2005-07-04 12:05) [13]

Веселая ветка ;)


← →
-=snoop=- ©   (2005-07-04 12:45) [14]

Не могу удалить выделенную строку,

form1.DBGrid1.SelectedRows.Delete

ругается


← →
Digitman ©   (2005-07-04 12:54) [15]


> Не могу


к терапевту.


> ругается


матерно ?


← →
-=snoop=- ©   (2005-07-04 13:01) [16]

2 Digitman а может иаду выпить?


← →
Digitman ©   (2005-07-04 13:04) [17]


> -=snoop=- ©   (04.07.05 13:01) [16]


на твое усмотрение


← →
-=snoop=- ©   (2005-07-04 13:20) [18]

ну а по делу ничего...


← →
Digitman ©   (2005-07-04 13:28) [19]

а по делу - задавай КОНКРЕТНЫЙ вопрос, с КОНКРЕТНЫМ же твоим "типа"

а не ту бредь, что ты сейчас несешь, вперемешку с доморощенным жаргоном


← →
-=snoop=- ©   (2005-07-04 13:36) [20]

2 Digitman hjkdlshgl;s = это по французСки

пишет ошибку типа(( не значит КОНКРЕТНО, не значит В НАТУРЕ
это просто скромное "error type"

а иаду выпить нужно те,,,фсе же


← →
Digitman ©   (2005-07-04 13:50) [21]


> иаду


> те


> фсе


> типа


детский сад.


← →
Mike Kouzmine ©   (2005-07-04 21:02) [22]

получи из списка закладку, перейди на нее, удали запись и так до посинения.



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

Скачать: CL | DM;



Память: 0.49 MB
Время: 0.034 c
1-1122380177
Alexey_T-O
2005-07-26 16:16
2005.08.14
Курс $


14-1121797672
Narik
2005-07-19 22:27
2005.08.14
Где можно найти компонент???


6-1115420411
АНТИСпаммер
2005-05-07 03:00
2005.08.14
Как написать плагин для ie на Delphi ?


1-1122038202
Logan
2005-07-22 17:16
2005.08.14
Как сделать чтобы название программы было по середине???


14-1122294625
хм
2005-07-25 16:30
2005.08.14
как бы route настроить




   Наверх