Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / Pascal и Delphi / Учебник по Delphi 5 / Создание приложений /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Создание приложений SDI - Программирование от RIN.RU
Создание приложений SDI



Пример SDI-приложения


Для демонстрации SDI создадим простую программу просмотра изображения.


Построение интерфейса


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


  1. Выберите команду File/New Application, и появится пустое приложение.


    Совет: Delphi по умолчанию создает именно SDI-приложение. Однако хранилище объектов предоставляет возможность назначить новый шаблон проекта по умолчанию.


  2. Установите следующие свойства форм.


    СвойствоЗначение
    Caption
    Name
    ShowHint
    Image Viewer
    frmMain
    True



  3. Поместите компонент TPanel в форму. Установите следующие его свойства.


    СвойствоЗначение
    Align
    Caption
    alTop
    -



  4. Поместите три компонента TSpeedButton в TPanel и назовите их spbtnLoad, spbtnStretch и spbtnCenter. Установите следующие их свойства.


    СвойствоЗначение
    spbtnLoad.Hint
    spbtnLoad.Left
    spbtnLoad.Top
    spbtnStretch.AllowAlIUp
    spbtnStretch.Grouplndex
    spbtnStretch.Hint
    spbtnStretch.Left
    spbtnStretch.Top
    spbtnCenter.AllowAlIUp
    spbtnCenter.Grouplndex
    spbtnCenter.Hint
    spbtnCenter.Left
    spbtnCenter.Top
    Load
    8
    8
    True
    1
    Stretch
    48
    8
    True
    2
    Center
    80
    8



  5. Поместите еще одну TPanel в форму и установите следующие ее свойства.


    СвойствоЗначение
    Align
    Caption
    alClient
    -



  6. Поместите компонент ТImage во вновь созданную ТPanel и установите следующие его свойства.


    СвойствоЗначение
    Align
    Name
    alClient
    imgMain



  7. Добавьте в форму TOpenDialog со следующими свойствами.


    СвойствоЗначение
    Filter
    Name
    Options
    Bitmaps (*.bmp)|*.bmp
    opndlgLoad
    ofPathMustExist,ofFileMustExist]




Delphi предоставляет вам множество значков для компонента TSpeedButton; они находятся в каталоге IMAGES\BUTTONS. Для нас вполне подойдут следующие установки свойств Glyph.


СвойствоЗначение
spbtnLoad.Glyph
spbtnStretch.Glyph
spbtnCenter.Glyph
FLDROPEN.BMP
FONTSIZE.BMP
PICTURE.BMP



Теперь самое время сохранить проект, выбрав в меню команду File/Save Project As. Сохраните Unit1 как Main, а проект - как EgSDIApp.


Написание кода


Теперь, после создания интерфейса, перейдем к написанию исходного текста вашего приложения. Сначала загрузите изображение следующим образом.


  1. Дважды щелкните на компоненте spbtnLoad, и Delphi выведет окно редактора и автоматически создаст обработчик события OnClick.

  2. Введите код.


    if opndlgLoad.Execute then
    imgMain.Picture.LoadFromFile(opndlgLoad.FileName);




Метод opndlgLoad.Execute вызывает стандартное диалоговое окно открытия файла. Если вы выбрали файл и щелкнули на ОК, метод возвращает True и загружает в свойство FileName полный путь к имени файла. При щелчке на Cancel или нажатии клавиши метод вернет False.


Компонент TImage предоставляет свойство Picture, которое является экземпляром класса TPicture. Этот класс обеспечивает работу с растровыми изображениями, пиктограммами и метафайлами. Один из его методов, LoadFromFile, служит для загрузки изображения по имени файла.


Выберите команду Run/Run для компиляции и запуска приложения и попытайтесь открыть картинку.


Теперь добавьте возможность растягивания изображения.


  1. Дважды щелкните на компоненте spbtnStretch, и Delphi выведет окно редактора и автоматически создаст обработчик события OnClick.

  2. Введите код.



    imgMain.Stretch:= spbtnStretch.Down;





Компонент TSpeedButton имеет свойство Down, которое равно True при нажатой кнопке. Свойство Stretch класса TImage позволяет растянуть картинку.


Для выравнивания картинки по центру воспользуйтесь приведенной выше инструкцией (только используйте компонент spbtnCenter) и введите следующий код:



imgMain.Center:= spbtnCenter.Down;


<<<  Назад
 1  2 


 8  Комментарии к статье  8 8  Обсудить в чате

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь