Главная страница
Библиотека (скачать книги)
Скачать софт
Введение в программирование
Стандарты для C++
Уроки по C#
Уроки по Python
HTML
Веб-дизайн
Ассемблер в среде Windows
ActiveX
Javascript
Общее о Линукс
Линукс - подробно
Линукс - новое
Delphi
Паскаль для начинающих
Турбопаскаль
Новости
Партнеры
Наши предложения
Архив новостей





Windows Forms.

Итак, мы подошли к волнующему и ответственному моменту - программированию Windows приложений. Перед тем как написать хотя бы одну строку кода определимся, как мы будем создавать Windows приложение. Тип проекта у нас останется Empty Project.После создания пустого каркаса зайдите в опции проекта (Project->имя_проекта properties).Должна быть выбрана вкладкаGeneral. В пункте Output Type надо поставить Windows Application(это означает, что приложение является Windows – приложением).Это и демонстрируется на рисунке.

Также нужно подключить 2 библиотеки динамической линковки(System.dll,System.Windows.Forms.dll). Для этого нужно выбрать Project->Add Refernce. И через кнопку select при активной закладки .NET выбрать указанные dll. Это показывается на рисунке ниже:

Выполнив всё это вы готовы к написанию программы. Теперь пришло время подковаться теоретически для взятия новых высот.

Пространство имен System.Windows.Forms

Это пространство предназначено для создания Windows - приложений с графическим интерфейсом. В этом пространстве есть много нужных и полезных классов.Первая программа:

using System.Windows.Forms;
using System;
class Sample
{
	public static void Main()
	{
		// Создание формы
		Form frm = new Form();
		// Задание заголовка
		frm.Text = "Tell me a secret";

		Application.Run(frm);
	}
}

Данная программа отображает на экран форму ( аналог диалога в терминологии Visual C++). Данная программа отображает на экран форму (аналог диалога в терминологии Visual C++).Form – это класс, который находится в пространстве System.Windows.Forms отвечает за создание форм. Вот его иерархия наследования:

Object
   MarshalByRefObject
      Component
         Control
            ScrollableControl
               ContainerControl
                  Form

Естественно у этого класса есть свойства и методы, например в нашем примере с помощью свойства Text мы изменили заголовок окна. Application – это класс, который отвечает за запуск, остановку приложения и т.п.. Метод Run() – это статический метод класса Application.Он запускает стандартный цикл работы с сообщениями для текущего потока. Форма, чья ссылка была передана в метод Run становится видимой и главной формой в приложении. Вообще в приложении может быть много форм, но главная будет только одна и когда она закрывается, все подчиненные формы закрываются тоже. Примеры работы с Windows.Forms смотрите в следующих разделах урока.

Элементы управления. Кнопки и надписи.

Итак, мы снова встречаемся с элементами управления. На этот раз вас ждет много приятных сюрпризов, связанных с огромным количеством визуальных свойств, присущих элементам управления Windows Forms. Начнем с того, что практически все элементы управления являются наследниками класса Contro, который является базовым для компонент с визуальным отображением.

Наследники класса Control:

System.Object
   System.MarshalByRefObject
      System.ComponentModel.Component
         System.Windows.Forms.Control
            System.ComponentModel.Design.ByteViewer
            System.Windows.Forms.AxHost
            System.Windows.Forms.ButtonBase
            System.Windows.Forms.DataGrid
            System.Windows.Forms.DateTimePicker
            System.Windows.Forms.GroupBox
            System.Windows.Forms.Label
            System.Windows.Forms.ListControl
            System.Windows.Forms.ListView
            System.Windows.Forms.MonthCalendar
            System.Windows.Forms.PictureBox
            System.Windows.Forms.PrintPreviewControl
            System.Windows.Forms.ProgressBar
            System.Windows.Forms.ScrollableControl
            System.Windows.Forms.ScrollBar
            System.Windows.Forms.Splitter
            System.Windows.Forms.StatusBar
            System.Windows.Forms.TabControl
            System.Windows.Forms.TextBoxBase
            System.Windows.Forms.ToolBar
            System.Windows.Forms.TrackBar
            System.Windows.Forms.TreeView

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

Некоторые общие методы и свойства

  • public Control Parent {get; set;} - родитель для данного элемента управления. Каждый элемент управления должен иметь предка, так как элемент управления без предка - невидим. Дочерний элемент располагается на поверхности предка, и не может выходить за пределы поверхности предка. Расположение дочернего элемента указывается относительно верхнего левого угла клиентской области предка. Потомок наследует свойства своего предка.
  • public virtual string Text {get; set;} - текст, ассоциированный с элементом управления (заголовок).
  • public Point Location {get; set;} - левая верхняя точка элемента управления, указанная относительно левой верхней точки клиентской области родителя. Point - структура, описывающая точку на плоскости.
  • public object Tag {get; set;} - объект, который можно ассоциировать с элементом управления.
  • public int Width {get; set;} - ширина элемента управления.
  • public int Height {get; set;} - высота элемента управления.
  • public string Name {get; set;} - имя для идентификации элемента управления.
  • public virtual Font Font {get; set;} - шрифт, ассоциированный с элементом управления.
  • public void Hide(); - функция, скрывающая элемент управления.
  • public void Show(); - функция, отображающая элемент управления.
  • public Point PointToClient(Point p); - функция, преобразующая экранную точку в клиентские координаты.
  • public Point PointToScreen(Point p); - функция, преобразующая клиентскую точку в экранные координаты.
  • А также огромное количество обработчиков всевозможных событий.

Некоторые свойства кнопки

public virtual Image BackgroundImage {get; set;} - фоновая картинка для кнопки.

public bool TabStop {get; set;} - участие в переходах по клавише Tab между элементами управления.

Некоторые свойства надписи

public virtual bool AutoSize {get; set;} - способность надписи подгонять свой размер под содержимое (например, под длину и высоту отображаемого текста).

public virtual BorderStyle BorderStyle {get; set;} - стиль рамки для надписи. Варианты: Fixed3D - трехмерная рамка; FixedSingle - рамка из одной линии; None - отсутствие рамки.

Более подробную информацию можно получить, изучив практические 
примеры, или заглянув в MSDN.


 
 
 

Библиотека программиста. 2009.
Администратор: admin@programmer-lib.ru