Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Delphi для проффесионалов и начинающих программистов


Информационный Канал Subscribe.Ru


Delphi для профессионалов и начинающих

Delphi для профессионалов и начинающих

Привет, поздравляю вас с первым выходом рассылки “Delphi для проффесионалов и начинающих. Вы наверняка догадались, что речь у нас пойдёт об самом интересном на мой взгляд языке программирования, об объектно ориентированном паскале или DELPHI.

Программа

Сегодня мы поговорим о компьютерных программах. Итак, компьютерная программа – это набор элементарных команд процессора, представленных в файле в виде последовательности байтов (машинный код). Каждая команда может быть закодирована одним или несколькими байтами. Программы в таком виде можно составлять вручную, но подобная работа человеку просто не под силу из-за неудобства управления процессором напрямую с помощью простых комманд. Поэтому программа пишется на одном из языков программирования как обычный текст. Этот текст называется исходным текстом (или исходным кодом) программы.

Комманды языка программирования понятны и наглядны. Например следующий условный текст представляет собой небольшую программу сложе-ния двух чисел:

Взять значения, введёные пользователем в поля А1 и А2;

Вычислить сумму этих значений;

Поместить результат в поле А3.

Полужирным шрифтом выделены названия комманд. Основные, наиболее часто используемые комманды языка программирования, называются операторами и обычно записываются с помощью специально предназначенных для этого символов или ключевых слов. Например, занесение результата вычисления выражения в некоторую ячейку памяти компьютера обычно производится с помощью оператора присваивания. Они отображаются в тексте с помощью специальных символов. Комбинации данных и операции над ними называются выражениями.

Алгоритмы и программы

Перед тем, как начать составлять программу, надо предварительно придумать и продумать (лучше всего, записать на бумаге) алгоритм её работы, представляющий собой строгое, формальное, не допускающее неоднозначностей и двусмысленностей описание процесса решения задачи. После того как алгоритм готов, на его основе и составляется (кодируется) программа. Процесс создания алгоритма самый важный. Если здесь допущены ошибки, то устранить их на этапе кодирования весьма трудно. Исходный текст программы автоматически переводится в набор инструкций процессора с помощью специальной программы, называемой компилятором. В среде Delphi для этого достаточно выполнить всего одну команду или нажать одну клавишу. Процесс компиляции перевода (трансляции) исходного текста в конкретные команда процессора выполняется очень быстро. За секунду программа-компилятор анализирует и транслирует тысячи строк исходного кода....

Итак, в следующем выпуске поговорим об функциях языка программирования Paskal., так как. Delphi есть ничто иное как “ВизуальныйПаскаль...

 

DELPHI FAQ

Ваши вопросы с большим удовольствием опубликую в следующем выпске рассылки. Ну а ответы смотрите через выпуск. Пишите : delphi2002@bk.ru?subject=’FAQ'

Q: Как получить пути к папке Windows и System?

 

Ответил Евгений

 

{$IFNDEF WIN32}
const MAX_PATH = 144;
{$ENDIF}

procedure TForm1.Button1Click(Sender: TObject);
var
a : Array[0..MAX_PATH] of char;
begin
GetWindowsDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
GetSystemDirectory(a, sizeof(a));
ShowMessage(StrPas(a));
end;

Q: Как сделать так, чтобы запущенная программа не была видна на панели задач?

Ответил mailto:4neo@bk.ru - Евгений

 

Во-первых, можно по примеру Back Orifice воспользоваться функцией RegisterServiceProcess.

 

Во-вторых, предположим, вы пользуетесь компонентой TrxTrayIcon из rxLib, иначе непонятно, как вы будете возвращать программу обратно из минимизированного состояния.

A: (EM, DS): type

TForm1 = class(TForm)

Label1: TLabel;

RxTrayIcon1: TRxTrayIcon;

procedure FormCreate(Sender : TObject);

procedure RxTrayIcon1DblClick(Sender: TObject);

private

{ Private declarations }

procedure ApplicationMinimize(Sender : TObject);

procedure ApplicationRestore(Sender : TObject);

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);

begin

Application.OnMinimize := ApplicationMinimize;

Application.OnRestore := ApplicationRestore;

ShowWindow(Application.Handle, SW_HIDE);

end;

procedure TForm1.ApplicationMinimize(Sender : TObject);

begin

ShowWindow(Application.Handle, SW_HIDE);

end;

procedure TForm1.ApplicationRestore(Sender : TObject);

begin

ShowWindow(Application.Handle, SW_HIDE);

end;

procedure TForm1.RxTrayIcon1DblClick(Sender: TObject);

begin

Application.Restore;

Application.BringToFront;

end;

(AK): Только сpазу предупреждаю про грабли, на которые я наступал -- будь готов к тому, что если пpи попытке закрытия приложения в OnCloseQuery или OnClose выводится вопрос о подтверждении, то могут быть проблемы с автоматическим завершением пpогpаммы пpи shutdown -- под Win95 просто зависает, под WinNT не завершается. Очевидно, что сообщение выводится, но его не видно (причем SW_RESTORE не сpабатывает). Решение -- ловить WM_QUERYENDSESSION и после всяких завеpшающих действий и вызова CallTerminateProcs выдавать Halt

 

 

 

На сим распрощаюсь с вами до следующего выпуска....

Пишите мне delphi2002@bk.ru . С Уважением, Neo.

 

 

 

 

 

 


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное