Шаг 70 - Общие выводы о формах

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

gif/70_1.gif (2532 b)

Но это все на первый взгляд, среда VB давала Вам такую возможность, а мы то с С# работает без среды. Формы в VB хранились в файле FRM. А Сам FRM файл это обычный текстовый файл. Вот такого вида.

VERSION 5.00
Begin VB.Form Form1 
	Caption = "Form1"
	ClientHeight = 1095
	ClientLeft = 60
	ClientTop = 345
	ClientWidth = 1845
	LinkTopic = "Form1"
	ScaleHeight = 1095
	ScaleWidth = 1845
	StartUpPosition = 3 'Windows Default
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

Хорошо с этим понятно, но а как же диалоговые окна например в VC++.

gif/70_2.gif (4825 b)

Но опять в данном виде проектировать окно позволяла среда VC++. А само диалоговое окно храниться в файле rc и опять же в текстовом виде.

IDD_ABOUTBOX DIALOG DISCARDABLE  0, 0, 166, 44
STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "About Tmp6"
FONT 8, "MS Sans Serif"
BEGIN
	ICON IDR_MAINFRAME,IDC_STATIC,11,17,21,20
	LTEXT "Tmp6 Version 1.0",IDC_STATIC,40,10,57,8,SS_NOPREFIX
	LTEXT "Copyright (C) 2001",IDC_STATIC,40,25,119,8
	DEFPUSHBUTTON "OK",IDOK,109,7,50,14,WS_GROUP
END

Так что нет нечего удивительного что в С# без среды разработки нам приходиться использовать окна в стиле

class AppForm : Form
{
	public  AppForm()
	{
		MainMenu mnuFileMenu = new MainMenu();
		this.Menu = mnuFileMenu;
		mnuFileMenu.MenuItems.Add("Test");
		Label label1 = new Label();
		label1.Text = "First Step Site";
		label1.Location = new Point(15,15);
		label1.BackColor = Color.Pink;
		label1.ForeColor = Color.Maroon;
		this.Controls.Add(label1);
	}
}

Все практически то же самое только написано на другом языке. И идея та же. Средства разработки наверно будут позволять Вам проектировать окна удобно. Только от этого ничего не поменяется, в смысле идеи и того как класс формы описываются.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.