procedure
var
Count: Integer;
begin
Count := 0;
while
TButton(Components[Count]).SetFocus;
end
или еще проще:
procedure
var
Target: TComponent;
begin
Target := FindComponent('Button1'
TButton(Target).SetFocus;
end
Оба этих примера показывают как найти компонент
12. Как получить горизонтальный ScrollBar на ListBox?
Пошлите сообщение
procedure
begin
SendMessage(Listbox1.Handle, LB_SETHORIZONTALEXTENT, 1000, Longint(0));
end
13. Как определить текущую колонку и строку каретки в компоненте TMemo?
Вы можете использовать сообщения Windows API
var
LineNum: Longint;
CharsBeforeLine: Longint;
begin
LineNum := SendMessage(Memo1.Handle, EM_LINEFROMCHAR, Memo1.SelStart, 0);
CharsBeforeLine := SendMessage(Memo1.Handle, EM_LINEINDEX, LineNum, 0);
Label1.Caption := 'Line '
Lebel2.Caption := 'Position '
end
14. Постранична прокрутка TMemo, реализация Undo и определение строки курсора.
Как прокрутить содержимое компонента
Приведенная ниже процедура предполагает, что фокус находится на
procedure
begin
if
SendMessage(Memo1.Handle,
WM_VSCROLL,
SB_PAGEDOWN,
0)
else if
end
Если определено всплывающее (popup) меню для
Если встроенного Undo достаточно, то это очень просто:
Memo1.Perform(EM_UNDO, 0, 0);
Для переключения свойства
Undo1.Enabled := Memo1.Perform(EM_CANUNDO, 0, 0) <> 0;
Как можно определить, на какой строке в
Весь фокус в сообщении
procedure
var
ILine: Integer;
begin
ILine := Memo1.Perform(EM_LINEFROMCHAR, $FFFF, 0);
MessageDlg('Line Number: '
end
15. Как поместить BLOB Memo в компонент TMemo?
Попробуйте так:
procedure
var
S: TBlobStream;
begin
S := TBlobStream.Create(Table1BBBMemo, bmRead);
Memo1.Lines.LoadFromStream(S);
S.Free;
end
где:
1.
2.
16. Как показать содержимое Memo поля в TDBGrid?