Jump to content

uniDBTreeGrid переход по строкам при выполнении DataSet.Locate()


MSMK

Recommended Posts

Just now, Sherzod said:

Добрый день,

Я предполагаю что нод который содержит запись, должна быть раскрыта

получилось полечить указав фокус гриду unidbgrid.SetFocus

Link to comment
Share on other sites

1 minute ago, Sherzod said:

Добрый день,

Я предполагаю что нод который содержит запись, должна быть раскрыта

а как отобразить запись, если она находится не в поле видимости? При вызове locate, не срабатывает scroll

Link to comment
Share on other sites

Just now, =GGG= said:

а как отобразить запись, если она находится не в поле видимости? При вызове locate, не срабатывает scroll

похожая ситуация

Но решение не помогло

 

Link to comment
Share on other sites

Добрый день,

Попробуйте это решение:

procedure TMainForm.UniButton1Click(Sender: TObject);
begin
  if ClientDataSet1.Locate('Id' ,90, []) then
  begin
    //UniSession.AddJS('setTimeout(function(){' + UniDBTreeGrid1.JSName + '.getView().getNode('+ UniDBTreeGrid1.JSName +'.uniRow).scrollIntoView()}, 500)');
    UniDBTreeGrid1.JSInterface.JSCode('Ext.defer(function(){'#1'.ensureVisible('#1'.getSelectionModel().getSelected().getAt(0))}, 100);');
  end;
end;

 

  • Like 1
Link to comment
Share on other sites

13 minutes ago, Sherzod said:

Добрый день,

Попробуйте это решение:


procedure TMainForm.UniButton1Click(Sender: TObject);
begin
  if ClientDataSet1.Locate('Id' ,90, []) then
  begin
    //UniSession.AddJS('setTimeout(function(){' + UniDBTreeGrid1.JSName + '.getView().getNode('+ UniDBTreeGrid1.JSName +'.uniRow).scrollIntoView()}, 500)');
    UniDBTreeGrid1.JSInterface.JSCode('Ext.defer(function(){'#1'.ensureVisible('#1'.getSelectionModel().getSelected().getAt(0))}, 100);');
  end;
end;

 

Спасибо большое. Заработало.   

  • Like 1
Link to comment
Share on other sites

14 hours ago, Sherzod said:

Добрый день,

Попробуйте это решение:


procedure TMainForm.UniButton1Click(Sender: TObject);
begin
  if ClientDataSet1.Locate('Id' ,90, []) then
  begin
    //UniSession.AddJS('setTimeout(function(){' + UniDBTreeGrid1.JSName + '.getView().getNode('+ UniDBTreeGrid1.JSName +'.uniRow).scrollIntoView()}, 500)');
    UniDBTreeGrid1.JSInterface.JSCode('Ext.defer(function(){'#1'.ensureVisible('#1'.getSelectionModel().getSelected().getAt(0))}, 100);');
  end;
end;

 

Спасибо за оперативность!

  • Like 1
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...