File1 это объект класса TMenuItem
BMP1.LoadFromFile('c:\images\uncheck.bmp');
BMP2:=TBitMap.Create;
BMP2.LoadFromFile('c:\images\check.bmp');
SetMenuItemBitmaps(File1.Handle, 1, MF_BYPOSITION, BMP1.Handle, BMP2.Handle);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
BMP1.Free;
BMP2.Free;
end;
File1 это объект класса TMenuItem - пункт меню “File”. Значения параметров при вызове функции можно посмотреть в справочнике по Windows API.
При уничтожении меню освобождения связанных с ним картинок не происходит и их надо уничтожать вручную.
Вторая картинка BMP2 отображается рядом с пунктом меню, когда он выбран (Checked=True).
TMemo
Компонент класса TMemo может содержать до 32К текста (для Windows 3.x) вследствие ограничения Windows. В Delphi 2.0 предел увеличен до 64К (в декабрьской бета-версии).
I. Определение позиции каретки в TMemo.
Можено использовать сообщения Windows API EM_LINEFROMCHAR и EM_LINEINDEX для определения текущей позиции каретки.
procedure TForm1.ShowPosition;
var
LineNum: longint;
CharNum: longint;
begin
LineNum:= Memo1.Perform(EM_LINEFROMCHAR, Memo1.SelStart,0);
CharNum:= Memo1.Perform(EM_LINEINDEX, LineNum, 0);
Label1.Caption := 'Line : '+ IntToStr(LineNum+1);
Label2.Caption := 'Position :' + IntToStr((Memo1.SelStart -
CharNum)+1);
end;
Метод Perform, определенный в классе TControl, посылает сообщение своему же объекту, то есть его использование имеет тот же эффект, что и вызов функции API SendMessage():
SendMessage(Memo1.Handle,EM_LINEFROMCHAR, Memo1.SelStart,0);
II. Операция UnDo в TMemo.
Отмена последнего редактирования (операция UnDo) в объекте класса TMemo выполняется так же с помощью сообщений, посылаемых в данный объект:
procedure TForm1.UnDoClick(Sender: TObject);
begin
if Memo1.Perform(EM_CANUNDO, 0, 0)<>0 then
Memo1.Perform(EM_UNDO, 0, 0);
end;
В справочнике по Windows API описаны сообщения, которые можно послать в объект TMemo для управления его поведением. Кроме вышеназванных, имеется еще несколько полезных:
EM_EMPTYUNDOBUFFER Сбрасывает флажок UnDo
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий