Как “быструю подсказку” (Hints) сделать многострочной?
Необходимо создать соответствующую компоненту которая показывает “быструю
подсказку” (Hints) с более чем одной строкой. Компонента наследуется от
TComponent и называется TMHint. Hint-текст можно задавать следующим образом:
“Строка 1@Строка 2@Строка 3″. Символ ‘@’ используется как разделитель строк.
Если Вам нравится другой символ – измените свойство Separator. Свойство
Active указывает на активность (TRUE) или неактивность (FALSE) “многострочности”.
unit MHint;
interface
uses
SysUtils, WinTypes, WinProcs, Messages,
Classes, Graphics, Controls, Forms, Dialogs; Read the rest of this entry »
Поля в Memo-компоненте
С помощью API-функции SendMessage можно задать поля в Memo-компоненте.
Если необходимо, например, сделать отступ в 20 пикселей слева то можно
это сделать следующим образом:
var Rect: TRect;
begin
SendMessage( Memo1.Handle, EM_GETRECT, 0, LongInt(@Rect));
Rect.Left:= 20;
SendMessage(Memo1.Handle, EM_SETRECT, 0, LongInt(@Rect));
Memo1.Refresh;
end;
Как создать Ini-файл в директории программы?
По умолчанию ini-файл создается в Windows-директории (например: TIniFile.Create(’FOO.INI’
)), что приводит к “захламлению” оной. Более (эко-)логично (за исключением
случаев, когда программа делается для CD-ROM) если ini-файл создается в
той же директории что и главная программа. Это достигается с помощью одной
строки:
Read the rest of this entry »
INI-файлы (чтение/запись)
function ReadIni(ASection, AString : String) : String;
var
sIniFile: TIniFile;
sPath : String[60];
const
S = 'xyz'; { стандартная строка для выдачи ошибок чтения }
begin
GetDir(0,sPath);
sIniFile := TIniFile.Create(sPath + '\Name.INI');
Result := sIniFile.ReadString(ASection, AString, S); { [Section] String=Value }
sIniFile.Free;
end;
Read the rest of this entry »
Как ускорить навигацию по исходному тексту?
Весьма удобно при работе с текстами больше двух-трех страниц использовать
метки (bookmarks).
Чтобы установить подобную метку – необходимо нажать компбинацию клавиш:
CTRL+SHIFT+Число, где “Число” находится в пределах от 0 до 9. После этого
можно с любого места “прыгнуть” на эту метку. Для этого необходимо нажать
комбинацию CTRL+Число.
Read the rest of this entry »