[ Кодинг на C++ под Windows. Часть 1 ]

Программирование на C++ под Windows об этом мы сегодня будем говорить, 
хочу сказать когда я тока начинал программировать я программировал на 
Microsoft Visual C++, под виндос у меня получались не плохие программки 
для личного пользования, но учить вас программировать я буду на среде 
Borland Builder C++, скажу сразу мы не будем писать программы которые 
будут говорить нам "Привет мир" и все в этом духе, конечно понимаю что 
эта традиция, но готов поспорить что вы уже устали от такого рода статей, 
я вас сегодня научу сразу многому а именно, мы изучим компоненты 
"Label, ListBox, Button, MainMenu, Edit, Image, LoadDialog, SaveDialog" 
Многовато для одной статьи но после нее вы научитесь взаимодействовать 
копоненты между собой. Ладно не буду вас томить ненужным текстом и приступлю 
знакомить вас с программированием на C++.

Запустив среду разработки "Borland Builder C++ 6" перед вами уже есть готовая 
форма вот с ней мы и будем работать, для начало давайте настроим главное 
окно программы, то есть дадим имя форме, отключим функции "Свернуть и Расширить", 
сделаем размер окна какой нам больше потходит, и приступим к размещению 
комонентов на форме. И так в окне "Object Inspector" рисунок "1.jpg" 
выберем поле "BorderIcons" нажмем два раза, и присвоим "biMinize" и 
"biMaximize" значение "false", этим мы отключим функции "Свернуть и Расширить", 
отлично идем дальше, в "BorderStyle" что находится чуть ниже присвоим значение 
"bsSingle" это для того что бы пользователь вручную не смог расширить окно 
программы, ниже в поле "Caption" мы пишем "Это моя первая программа", в 
этом поле мы даем имя нашей программы, так листаем вниз, полю "height" 
присвоим значение "300", еще ниже полю "width" так же присвоим значение 
"300", все с настройкой программы мы закончили, у вас должна быть форма 
такая как на рисунке "2.jpg".
Теперь разместив на нашей форма следующие компоненты с вкладки "Standard" 
на панели задач "Edit, ListBox, и два Button" нажмем на каждую кнопочку по 
одному разу и в поле "Caption" присвоим имена "Добавить и Выход", компонет 
"Edit" в "Object Inspector" выберем поле "Text" и просвоим пустую строку, 
вы можите написать "Введите тут ваши данные" рисунок "3.jpg". Теперь начнем 
программировать, нажмем два раза на кнопочку "Добавить" и появится редактор 
кода и напишем такой код:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
if (!(Edit1->Text == "")){
ListBox1->Items->Add(Edit1->Text);
Edit1->Text = "";
}
}

Тут мы применили оператор "if" и логическое НЕ "!", тем самым говорим программе, 
если поле "Text" компонента "Edit", нe сравнивается, то добавить в поле "Items" 
компонета "ListBox", содержимое поля "Text", то есть что мы введем окажется в 
"ListBox". Теперь нажмем два раза на кнопочку "Выход" напишем такой код:


void __fastcall TForm1::Button2Click(TObject *Sender)
{
Close();
}

Тут думаю говорить для чего данный код нуже не надо  :))). Но для тех кто в 
танке, скажу что этим кодом мы закрываем программу, теперь скомпилируем наш 
код, нажав на зеленую стрелочку на панели задач или просто нажав "F9", и 
можем протестировать нашу программу, рисунок "4.jpg". Нам надо теперь добавить 
еще три компонента "Button" на форму, и присвоить в поле "Caption" следующие 
имена "Удалить, Сохранить, Открыть" рисунок "5.jpg". Для кнопочки удалить 
пишем такой код:

void __fastcall TForm1::Button3Click(TObject *Sender)
{
if(!(ListBox1->ItemIndex == -1))
ListBox1->Items->Delete(ListBox1->ItemIndex);
}

Тут почти все также как и в первом коде, но только с разницей, если поле 
"ItemIndex" компонента "ListBox" НЕ сравнивается с -1, то удалить выбранную 
строку "Items" компонента "ListBox", теперь добавим еще два компонента с 
вкладки "Dialogs" "SaveDialog и OpenDialog" рисунок "6.jpg", для того что бы 
сохранять и открывать данные в нашей программе. Нажмем на "SaveDialog" один 
раз и в "Object Inspector" выберем поле "Filter" и на жмем рядом с ним на 
"..." появится окно рисунок "7.jpg" введите данные которые показаны на рисунке, 
и теже данные введите в "OpenDialog". Теперь нажимаем два раза на кнопочку 
"Сохранить" и пишем следующий код:

void __fastcall TForm1::Button4Click(TObject *Sender)
{
if(SaveDialog1->Execute())
ListBox1->Items->SaveToFile(SaveDialog1->FileName);
}

Тут мы говорим программе, что сохранить все содержимое поля "Items" 
компонента "ListBox" в файл. Все проще простого, так дальше для кнопочки 
открыть пишем такой код:

void __fastcall TForm1::Button5Click(TObject *Sender)
{
if(OpenDialog1->Execute())
ListBox1->Items->LoadFromFile(OpenDialog1->FileName);
}

Тут все понятно, мы говорим программе открыть в поле "Items" содержимое файла 
которого мы укажем, рисунок "8.jpg".
Теперь давай сделаем так что бы наша программа работала на других компьютерах, 
заходим "Project->Options" и выбираем вкладку "Linker" и снимаем галку с 
"Use dynamic RTL", потом выбираем вкладку "Packages" и снимаем галку с 
"Build with runtime packages", потом перейдем на вкладку "Application" в поле 
"Title" пишем название программы, в этом поле задается истиное имя программы, 
ниже нажав "LoadIcon", можно выбрать иконку для программы. Нарисовать иконку 
можно с помощью встроеного редактора "Tools->ImageEditor", тем немение нажимаем 
"OK" и заного компилим программу "F9" рисунок "9.jpg".

Теперь создадим меню для нашей программы для этого выберем компонент 
"MainMenu" с вкладки "Standard", потом нажмем правой кнопкой по нему и 
выберем "MenuDesigner", появится окно редактора меню, щелкнем на первую 
пустую строку и в поле "Caption" напишем "&Файл", после этого под ней 
появится еще один пункт в нем пишем "Отк&рыть" потом продолжаем столбец и 
пишем "Сохра&нить","-" и "Выхо&д". Рядом с "&Файл", выбираем другой пункт 
и пишем "Ре&дактирование" в столбец заносим "Уда&лить", 
"Отпра&вить", символ "&" нужен для горячих клавиш, теперь давай добавим их 
к нашему меню, щелкая на каждый элемент меню и выберем в "Object Inspector" 
пункт "ShortCut" рисунок "10.jpg" и выбирем на любой вкус сочетание клавиш 
которых по команде будут выполнять код данного пункта. Нажав на "Отк&рыть" 
два раза появится редактор кода, введите тот код который мы писали ранее для 
кнопки "Открыть", и тоже самое проделайте с другими пунктами, наше меню должно 
выглядеть так рисунок "11.jpg".

Вернемся к нашей форме, сдвинем немного вниз "ListBox" и сверху добавим 
компонент "Label" с вкладки "Standart" и в поле "Caption" напишем "Тут ваши 
данные", под кнопочками разместим компонент "Image" с вкладки "Additional", 
дадим размер ему "81x65", нарисуем наше лого в каком нить редакторе по размеру, 
потом вернемся к нашему компоненту и в "Object Inspector" выберем "Picture" 
нажмем "..." потом выберем рисунок и нажмем "ОК", скомпилируем нашу программу, и 
проверим ее, все работает и меню тоже, ну вот мы сделали нашу первую программу 
рисунок "12.jpg". Как видешь программировать на среде "Borland Builder C++ 6" 
не трудно, мы сегодня много поработали и теперь можем смело отдахнуть, пакеда 
всем с вами был Outlaw.

Фотки к статьей лежат в /includes/coding/*

(c) Outlaw