![]() |
![]() ![]() ![]() ![]() |
|
Позиционирование каретки в TStringGridDelphi , ОС и Железо , Мышка и КурсорПозиционирование каретки в TStringGrid
Оформил: DeeCo
{
The following code allows you to position the caret
in a cell (InplaceEditor) of a StringGrid.
We need a Cracker class to access the InplaceEditor.
Mit folgendem Code kann man den Cursor in einer Zelle
(InplaceEditor) eines StringGrids positionieren.
Hierfur brauchen wir eine "Cracker" Klasse, weil der
InplaceEditor "protected" ist.
}
type
TGridCracker = class(TStringGrid);
{...}
implementation
{...}
procedure SetCaretPosition(Grid: TStringGrid; col, row, x_pos: Integer);
begin
Grid.Col := Col;
Grid.Row := Row;
with TGridCracker(Grid) do
InplaceEditor.SelStart := x_pos;
end;
// Get the Caret position from the focussed cell
// Ermittelt die Caret-Position der aktuellen Zelle
function GetCaretPosition(Grid: TStringGrid): Integer;
begin
with TGridCracker(Grid) do
Result := InplaceEditor.SelStart;
end;
// Example / Beispiel:
// Set the focus on col 1, row 3 and position the caret at position 5
// Fokusiert die Zelle(1,3) und setzt den Cursor auf Position 5
procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.SetFocus;
SetCaretPosition(StringGrid1, 1, 3, 5);
end;
Программный код, который позволяет позиционировать курсор (карету) в конкретной ячейке таблицы TStringGrid. Курсор используется для редактирования ячеек в таблице. Основные компоненты:
Пример: Обработчик события клика кнопки демонстрирует, как использовать эти процедуры для установки фокуса на конкретной ячейке и позиционирования курсора в конкретном месте. Разбивка кода: В примере, когда кнопка кликается, она устанавливает фокус на ячейке (1,3) и позиционирует курсор в положении 5. Курсор может быть перемещен с помощью клавиатуры или других стандартных операций редактирования. Обратите внимание, что этот код предполагает, что у вас есть компонент TStringGrid, имя которого StringGrid1 в вашем формате. Вам нужно заменить это на имя вашего контрола таблицы, если оно отличается. Позиционирование каретки в TStringGrid позволяет с помощью класса TGridCracker доступа к InplaceEditor и управлять его положением, определив столбец, строку и позицию курсора. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: Мышка и Курсор ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||