Показаны сообщения с ярлыком delphi. Показать все сообщения
Показаны сообщения с ярлыком delphi. Показать все сообщения

вторник, 13 декабря 2016 г.

Delphi 7: Количество вхождений подстроки в строку

Источник

uses StrUtils;

...

function Substr_Count(const Substring, Text: string): integer;
var
offset: integer;
begin
result := 0;
offset := PosEx(Substring, Text, 1);
while offset <> 0 do
begin
inc(result);
offset := PosEx(Substring, Text, offset + length(Substring));
end;
end;

четверг, 16 июня 2016 г.

Схемы горячих клавиш в редакторе Delphi 7

В схеме гор.клавиш "по-умолчанию" TAB не сдвигает выделенный текст, а просто вставляет табуляцию, стирая выделенное, но это можно изменить, выбрав другую схему:
пункт меню Tools -> Editor Options -> вкладка "Key Mappings".
Выбираем схему, например "Visual Studio" и таб сдвигает выделенный текст.

вторник, 31 мая 2011 г.

Полноэкранная форма

Невидимое содержимое панели задач (некрасивый вариант, имхо):
//To hide the task bar use
ShowWindow(FindWindow
('Shell_TrayWnd',nil), SW_HIDE);

//To show the task bar use
ShowWindow(FindWindow
('Shell_TrayWnd',nil), SW_SHOWNA);
--

Полноэкранная форма (это гораздо симпотичнее):
BorderStyle := bsNone;
WindowState := wsMaximized;

вторник, 5 апреля 2011 г.

Себе про Delphi

FuncINI.pas:

function ReadIni(FName, ASection, AString : String) : String;
var
sIniFile: TIniFile;
begin
sIniFile:=TIniFile.Create(FName);
Result:=sIniFile.ReadString(ASection, AString, 'ReadIni_error');
sIniFile.Free;
end;

function ReadIniBool(FName, ASection, AString : String) : Boolean;
var
sIniFile: TIniFile;
begin
sIniFile:=TIniFile.Create(FName);
Result:=sIniFile.ReadBool(ASection, AString, False);
sIniFile.Free;
end;

// Пример использования
daIniFile := 'config.ini';
daLIO := ReadIniBool(ExtractFilePath(paramstr(0))+daIniFile,'Log','LogIsOn');
daLogFileName := ReadIni(ExtractFilePath(paramstr(0))+daIniFile,'Log','LogFileName');

Себе про Delphi

FuncLog.pas:

var daLogFile: TextFile;

procedure InitLog(fname:string; Lio:Boolean);
begin
if Lio then begin
AssignFile(daLogFile,fname);
if FileExists(fname) then Append(daLogFile) else Rewrite(daLogFile);
end;
end;

procedure WriteLog(Str:String; Lio:Boolean);
begin
if Lio Then begin
str:=DateToStr(now)+' '+TimeToStr(now)+' '+str;
Writeln(daLogFile,str);
Flush(daLogFile);
end;
end;

// Пример использования:
InitLog(daLogFileName, daLIO);
Writelog('Application started', daLIO);

Себе про Delphi

Обработка исключительных ситуаций в Delphi
Управление ошибками, или обработка исключений в Delphi

Пример использования:
...
try
idpop31.Connect();
// При ошибках подключения отписываемся в логе
except
on daExcepti: Exception do
begin
Writelog('Connection failed:'+#13#10+daExcepti.Message, daLIO);
end;
end;

Архив