Читаем Советы по Delphi. Версия 1.4.3 от 1.1.2001 полностью

Этот код был использован для вывода результатов работы программы проверки (неважно чего) чтобы не приходилось смотреть файл с результатами. Главная проблема была в том, что консоль (если запуск был из Windows) оставалась висеть позади формы до её закрытия. Вреда конечно никакого, но не приятно. Если же запуск из Нортона или т.п., то всё идёт нормально

Program MyProgram;

{$APPTYPE CONSOLE}

uses

 Windows, Forms, Dialogs, SysUtils, StdCtrls, Controls; // и (или) т.п.

 …

var

 …

 SH,SW: integer;

 MainForm: TForm; // если нужна форма

 Memo: TMemo;

 // могут быть также любые другие визуальные компоненты

 …

 // здесь могут быть процедуры и функции, т.е всё как в обычном Паскале


Begin

 … // здесь какой-то код

 { а здесь, перед выводом формы, есть два пути:}

 { так}

 FreeConsole; // Отцепиться от консоли, т.е она просто исчезнет (в случае запуска из Windows) и останется только форма

 { или так}

 //  Handle:= GetForegroundWindow; // Получить Handle консоли

 //  ShowWindow(Handle, SW_HIDE);  // Спрятать консоль

 // а в конце, перед завершением

 //  ShowWindow(Handle, SW_SHOW); // Показать консоль


 { для помещения формы в центр экрана}

 SH:= Screen.Height;

 SW:= Screen.Width;

 MainForm:= TForm.Create(nil);

 with MainForm do try

  BorderStyle:= bsSizeable;

  Height:= 390;

  Width:= 390;

  Left:= (SW - Width) div 2;

  Top:= (SH - Height) div 2;

  Caption:= 'Моя программа';

  // здесь могут быть и другие компоненты

  Memo:= TMemo.Create(MainForm);

  with Memo do begin

   Parent:= MainForm;

   Align:= alClient;

   BorderStyle:= bsNone;

   Font.Name:= 'Courier New Cyr';

   Font.Size:= 9;

   ScrollBars:= ssVertical;

   Lines.LoadFromFile('MyProgram.txt');

  end;

  ShowModal;

 finally

  Free;

 end;

 { или можно вывести сообщение, например в случае неудачи (или наоборот)}

 with CreateMessageDialog('Текст сообщения', mtInformation, [mbOk]) do try

  Caption := 'Заголовок';

  ShowModal;

 finally

  Free;

 end;


 // это для второго пути, иначе она так и останется висеть свёрнутой

 // ShowWindow(Handle, SW_SHOW); // Показать консоль

End.

С уважением, Михаил Чумак. 

События приложения

Delphi 1 

…проблема в том, что когда приложение Delphi минимизировано, десктиптор окна в этом случае совершенно другой. Объект Application в действительности дескриптор собственного окна! Application.Handle является окном, которое активно при минимизированном приложении. Когда вы минимизируете ваше приложение, все формы просто прячутся (hidden). Обратите внимание на методы Application Minimize и Restore. Также обратите внимание, что у TApplication есть два недокументированных события, OnMinimize и OnRestore. Они принадлежат приложению, поскольку в TForm нет обработчиков событий, возникающих при минимизации главного окна. Немного странно. Я думаю так сделано для поддержки SDI-приложений. 

Нужны ли мне формы в сервере приложений?

Nomadic отвечает:

Да.

Необязательно, чтобы они были видимы, но должна присутствовать хотя бы одна. Чтобы сделать главную форму невидимой, установите

Application.ShowMainForm := False

в файле проекта.

Пример:

begin

 Application.ShowMainForm := False;

 Application.Initialize;

 Application.CreateForm(TForm1, Form1);

 Application.Run;

end.

Создание формы на основе строки

Обзор

В данном документе рассказывается о том, как в Delрhi можно создать экземпляр формы на основе строки, содержащей имя типа. Код примера прилагается.

На кого расчитан данный документ?

Перейти на страницу:

Похожие книги

Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript
Adobe Flash. Создание аркад, головоломок и других игр с помощью ActionScript

Данная книга посвящена программированию игр с помощью ActionScript. Здесь вы найдете подробные указания, необходимые для создания самых разных игр – аркад, головоломок, загадок и даже игровых автоматов. В тексте приведены исходные коды программ и детальные, доступно изложенные инструкции. Базовые принципы программирования ActionScript рассматриваются на примере игр, однако вы без труда сможете применить полученные знания и для разработки неигровых проектов, таких как Web-дизайн и реклама. Рекомендации Гэри Розенцвейга помогут вам не только придумывать занимательные игры и размещать их на Web-сайте, но и оптимизировать скорость их работы, а также защищать свои творения от несанкционированного копирования. Представленный в книге код несложно изменить для использования в других программах.Книга предназначена для широкого круга читателей – создателей анимационных роликов, художников-оформителей, программистов и разработчиков Web-сайтов. Издание может также выступать в качестве практического пособия по изучению ActionScript.

Гэри Розенцвейг

Программирование, программы, базы данных / Программирование / Книги по IT
Программирование. Принципы и практика использования C++ Исправленное издание
Программирование. Принципы и практика использования C++ Исправленное издание

Специальное издание самой читаемой и содержащей наиболее достоверные сведения книги по C++. Книга написана Бьярне Страуструпом — автором языка программирования C++ — и является каноническим изложением возможностей этого языка. Помимо подробного описания собственно языка, на страницах книги вы найдете доказавшие свою эффективность подходы к решению разнообразных задач проектирования и программирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С-совместимом ядре C++, так и современный -ориентированный подход к созданию программных продуктов. Третье издание бестселлера было существенно переработано автором. Результатом этой переработки стала большая доступность книги для новичков. В то же время, текст обогатился сведениями и методиками программирования, которые могут оказаться полезными даже для многоопытных специалистов по C++. Не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явные приведения типов (cast-операторы) и другие. Настоящее специальное издание отличается от третьего добавлением двух новых приложений (посвященных локализации и безопасной обработке исключений средствами стандартной библиотеки), довольно многочисленными уточнениями в остальном тексте, а также исправлением множества опечаток. Книга адресована программистам, использующим в своей повседневной работе C++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка «из первых рук».

Бьерн Страуструп , Бьёрн Страуструп , Валерий Федорович Альмухаметов , Ирина Сергеевна Козлова

Программирование, программы, базы данных / Базы данных / Программирование / Учебная и научная литература / Образование и наука / Книги по IT