Как подружить SelectedRows и GotoBookmark() ?

Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду

Ответить
GOS
Сообщения: 111
Зарегистрирован: 17 фев 2004, 10:32
Контактная информация:

SelectedRows.Items[] из rxDBGrid - имеет тип String
а DataSet.GotoBookmark() требует Pinter...

Как преобразовать строку в указатель?

С уважением, Олег.
PS Paradox-BDE-TTable-RxDBGrid
Аватара пользователя
Игорь Акопян
Сообщения: 1440
Зарегистрирован: 13 окт 2004, 17:11
Откуда: СПБ
Контактная информация:

А если попробовать просто Bookmark?
Изображение
Аватара пользователя
Naeel Maqsudov
Сообщения: 2570
Зарегистрирован: 20 фев 2004, 19:17
Откуда: Moscow, Russia
Контактная информация:

В хелпе есть пример как их подружить!
Решение как видите тривиально - это typecast :)

Код: Выделить всё

The following example copies the selected rows in a db grid to a list box.

procedure TForm1.Button1Click(Sender: TObject);
var
  i, j: Integer;
  s: string;
begin
  if DBGrid1.SelectedRows.Count>0 then
    with DBGrid1.DataSource.DataSet do
      for i:=0 to DBGrid1.SelectedRows.Count-1 do
      begin
        GotoBookmark(pointer(DBGrid1.SelectedRows.Items[i]));
        for j := 0 to FieldCount-1 do
        begin

          if (j>0) then s:=s+', ';
          s:=s+Fields[j].AsString;
        end;
        Listbox1.Items.Add(s);
        s:= '';
      end;
end;
Ответить