0

我有一个静态多行 wxTextCtrl。内容的行数超过了窗口可以显示的行数,因此它会滚动。当我的程序更新特定行的内容时,滚动会移动,因此更新可见。这对于可能一直在检查另一条线路的用户来说是令人不安的。

// k is line to update
// update is new line contents

        myTxtCtrl->Replace(
            myTxtCtrl->XYToPosition(0,k),
            myTxtCtrl->XYToPosition(0,k+1),
            update + L"\n");

// the control has now scrolled to ensure line k is visible

如何禁用此行为,或强制控件在更新到显示的先前可见部分后返回?

4

1 回答 1

0

或许做不到?似乎它只能通过相当大的麻烦来完成。更改为使用 wxListCtrl 可能更容易,它的项目可以轻松更改而不会干扰滚动位置。

这就是我所做的

            myListCtrl->SetItem(k,0,update);
于 2012-07-13T19:10:12.353 回答