Форум: "Начинающим";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];
ВнизРабота с ячейкой StringGrid Найти похожие ветки
← →
M1sT © (2006-10-28 18:28) [0]Как мне осуществить переход на нужную ячейку StringGrid"а, а затем сделать текст этой ячейки выделенным/невыделенным???
← →
rar © (2006-10-28 18:45) [1]Что значить нужную, это задать номер столбца и номер строки как в Excel и перейти?
← →
M1sT © (2006-10-28 19:30) [2]Перейти на нужную ячейку- значит передать ей фокус. Но не в этом проблема! При переходе на ячейку(двойным щелчком или по TAB"у) текст в ячейке становится выделенным, а мне не нужно чтобы он выделялся!!!
← →
ЮЮ © (2006-10-30 03:50) [3]Кликни в третий раз в нужном месте.
Такое поведение зашиго в генофонде
procedure TCustomGrid.UpdateEdit;
procedure UpdateEditor;
begin
FInplaceCol := Col;
FInplaceRow := Row;
FInplaceEdit.UpdateContents;
if FInplaceEdit.MaxLength = -1 then FCanEditModify := False
else FCanEditModify := True;
FInplaceEdit.SelectAll;
end;
begin
Для получения нужного поведения лучше написать своего наследника :)
Или добиться нужного эффекта в обработчиках.
Например так:
type
TStringGridAccess = class(TStringGrid);
procedure TForm1.StringGrid1MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if not StringGrid1.EditorMode then exit;
if StringGrid1.Tag = 0 then
TStringGridAccess(StringGrid1).InplaceEditor.SelLength := 0; //курсор в начале поля
// если курсор в конце поля, то так:
// TStringGridAccess(StringGrid1).InplaceEditor.SelStart :=
// Length(TStringGridAccess(StringGrid1).InplaceEditor.Text)
StringGrid1.Tag := StringGrid1.Tag + 1;
end;
procedure TForm1.StringGrid1GetEditText(Sender: TObject; ACol,
ARow: Integer; var Value: String);
begin
StringGrid1.Tag := 0;
// открывается редактор в ячейке
end;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.11.12;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c