Коммерциялық емес акционерлік қоғамы
«АЛМАТЫ ЭНЕРГЕТИКА ЖӘНЕ БАЙЛАНЫС УНИВЕРСИТЕТІ»
«Инженерлік кибернетика» кафедрасы

ВИЗУАЛДЫ ПРОГРАММАЛАУ
5В070200- Автоматтандыру және программалау мамандығының студенттеріне
зертханалық жұмыстарды орындауға арналған әдістемелік нұсқауларлықтар

Алматы 2014

ҚҰРАСТЫРУШЫЛАР: Сауанова К.Т. Омарова Г.А. «Визуалды программалау»   5B070200- Автоматтандыру және басқару -мамандығының  студенттері үшін зертханалық жұмыстарды орындауға арналған әдістемелік нұсқаулықтар.- Алматы: АЭжБУ, 2014.- 54 б.

Әдістемелік нұсқау 5B070200- «Автоматтандыру және басқару» мамандығы студенттеріне «Визуалды программалау» пәніне негіделген. Зертханалық жұмыстарды орындау дербес компьютерлерде жұмыс істеуді талап етеді және мәліметтер қоры сұлбаларының дизайндерін, кластар дизайндерін, қалыптар технологиясын (Form) қолдайтын программаларды құратын Visual Studio біріктірілген ортасының компоненттерін пайдалануды үйретуге арналған. Әр жұмыстың құрылымы жұмыс мақсатынан, тапсырмалардан, әдістемелік нұсқаулардан, бақылау сұрақтарынан тұрады.

Безенд. -22 , кест-10., әдеб. көрсеткіштері- 8 атау.

Пікір беруші: филология ғалымның кандидаты Нурмаханова М.К

«Алматы энергетика және байланыс университеті» коммерциялық емес акционерлік қоғамының 2014 ж. баспа жоспары бойынша басылады.

© «Алматы энергетика және байланыс университеті»  ҚЕАҚ, 2014 ж.

Мазмұны

Кіріспе  

1

Зертханалық жұмыс №1. TextBox, Label, Button компоненттерін пайдаланып жоба құру

5

2

Зертханалық жұмыс №2. ListBox компонентін пайдалану

10

3

Зертханалық жұмыс №3. CheckedListBox компонентерін пайдаланып жоба құру

15

4

Зертханалық жұмыс №4. DataGridView компоненттерін пайдаланып жоба құру

20

5

Зертханалық жұмыс №5. MenuStrip компоненттерін пайдаланып жоба құру

24

6

Зертханалық жұмыс №6. Сұхбаттасу терезелері

26

А қосымшасы

Б қосымшасы

В қосымшасы

Г қосымшасы

Д қосымшасы

Әдебиеттер тізімі

31

34

38

43

49

53

Кіріспе

Ұсынып отырған «Визуалды программалау» пәні бойынша әдістемелік нұсқауларда Visual Studio біріктірілген өндеу ортасы зерттеледі. Visual Studio ортасы операциялық жүйелер, Office 2007 және веб-қолданбалылар үшін қосымшалыларды құруға арналған. Бұл ортада визуалды программалауды оқыту дербес компьютерлер үшін кең таралған С++ тілінде негізделген. 5В070200 - «Автоматандыру және басқару» курсы мамандығының студенттеріне арналған және визуалды программалау бойынша студенттердің терең білім алуына жағдай жасайды. Visual Studio – бұл Майкрософт компаниясының біріктіріліген программаны өндеу ортасы және өзге де құрал-саймандық қатары кіретін өнімдерінің бірі. Мұндай өнімдер Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework және Microsoft Silverlight қолдайтын барлық платформалар үшін басқарушы және туған кодтарда графикалық интерфейсті қолданбалыларды, оның ішінде Windows Forms технологияларды қолдайтындар, веб- сайттар, веб қолданбалылар, веб- қызметтер.

Visual Studio-ға қарапайым кодты рефакторингтеу мүмкіндігі бар IntelliSense технологиясын қолдайтын негізгі кодтың редакторы кіреді. Енгізілген дұрыстаушы негізгі код деңгейінде дұрыстаушы және машиналық деңгейде де жұмыс істей алады. Қалған енгізуге болатын құралдардан болып графикалық интерфейсті қолданбаларды құруды жеңілдететін қалыптар редакторы, веб - редакторы, класстар дизайнері және мәліметер қоры сұлбасының дизайнері.

1 Зертханалық жұмыс № 1. TextBox, Label, Button компоненттерін пайдаланып жоба құру

Жұмыс мақсаты: TextBox, Label, Button компонеттерімен танысу. 

1.1 Тапсырма

TextBox, Label, Button компоненттерін пайдаланып функцияларды есептеу үшін программа құрыңыз.  Тапсырмалар нұсқаларын 1.1 кестеден қара.

1.1 кесте – Тапсырмалар нұсқалары

Нұсқа № 

Тапсырма

1

Y=

2

Y=

3

Y=

4

Y=

5

Y=

6

Y=

7

Y=

8

Y=

9

Y=

10

Y=)

11

Y=

12

Y=

13

Y=

14

Y=

15

Y=

1.2 Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

Пайдаланылған компоненттер:

- Label. Windows Forms Label басқармасының элементтері пайдаланушы пернетақтадан  өзгерте алмайтын мәтінді немесе  суреттерді кескіндеу үшін арналған. Олар пішіндегі объектілерді идентификациялау үшін пайдаланылады, Мысалы, басқару элементімен оны тышқан арқылы сырт еткізсек не болатынын сипаттамау үшін. Мәтіннен тұратын өрістерге, тізімдерге, тізімі бар өрістерге және т.б. сипаттаушы тақырыпшаларды қосуға мүмкіндік береді. Орындалу барысында пайда болатын уақиғаларға қарай жазбада көрсетілетін мәтінді өзгертіп тұратын кодты жазуға мүмкіндік береді. Мысалы, егер қолданбалыға өзгерістерді жөндеу үшін уақыт қажет болса, жөндеу мәртебесі туралы ақпаратты жазбада көріп отыруға болады.

Label компонетінің кейбір қасиеттері:

- Font. Басқарушы элементімен бейнеленетін мәтіннің шрифтін береді немесе қайтарады.

- Text. Мәтінді көрсетеді немесе қабылдайды.

- TextBox. Windows-тың «мәтін өрісі» басқару элементін көрсетеді.

TextBox басқару элементі пайдаланушыға қолданбалыға мәтінді енгізуге мүмкіндік береді. Бұл басқарушы элементте Windows-тың «мәтіннің өрісі» стандартты басқару элементтінде жоқ көп жолды редактор және парольдін белгілерін жасыру сияқты функционалды мүмкіндіктері жүзеге асырылған. Көбнеcе TextBox басқару элементі бір жолдан тұратын мәтінді енгізу немесе бейнелеуге пайдаланылады. Multiline және ScrollBars қасиеттері мәтіннің бірнеше жолдарын енгізуге немесе бейнелеуге мүмкіндік береді. TextBox көп жолды басқару элементінде мәтінмен қосымша операцияларды орындауға рұқсат беру үшін AcceptsTab және AcceptsReturn қасиеттері үшін мәндерін true деп орнату қажет.

TextBox басқару элементіне енгізілетін мәтінің көлемін шектеу MaxLength қасиеті үшін анықты белгілер санын орнату арқылы жүзеге асырылады. TextBox басқару элементерін пайдаланудың тағы бір жолы бұл жасырынды ақпаратты, парольдерді қабылдау үшін пайдалану. PasswordChar қасиеті бір жолдардан тұратын басқару элементінің нұсқасына енгізілетін белгілерді жасыруды жүзеге асырады. CharacterCasing қасиеті TextBox басқару элементіне енгізу барысында әріптер үшін көрсеткішті орнатады мысалы,     тек қана бас әріптерді, тек қана кіші әріптерді енгізу.

Меңзерді (салғының белгісің) TextBox мәтіндік өрісінің мазмұнын айналдырып басқару элементінің көрінетін облысына шығару үшін ScrollToCaret әдісін пайдалануға болады. Мәтіндік өрісте мәтіннің бөлігін  алу үшін Select әдісін пайдалануға болады.

TextBox басқару элементіне енгізілетін мәтінге шектеу кою басқару элементіне әр енгізілетін белгіні тексеретін  KeyDown уақиғасы үшін уақиғаларды  өңдеуішті құру арқылы жүзеге асырылады. TextBox басқару элементіне мәліметтерді енгізуге толықтай тыйым салу ReadOnly қасиеті үшін мәнін true деп орнатсақ жеткілікті.

TextBox қасиеттері:

1)        HideSelection — ерекшелінген мәтінді визуалды индикациялау  енгізу фокусы сыртқы компонентіне ауыстырылған жағдайда қалады ма жоқ па тапсырмасын шешеді (true - ерекшелінген мәтін жарықбергішті ауыстырмайды, false - жарықбергіш сыртқы компонентің ерекшелегенде өшеді).

2)        Lines — осы қасиет көмегімен жолдарды  беруге, шығаруға және енгізуге(ашылатын сұхбаттасу терезелері арқылы) болады. Осы қасиет үшін барлық берілгендер Text қасиетіне де түседі және керісінше.

3)        Multiline - көп жолды енгізу режимін береді (біз оны басқа тәсілмен бергенбіз- компонентте қосымша мәзір ашу жолымен).

4)        PasswordChar - егер біз TextBox-қа  енгізілетін символдар көрінбей, басқа символмен ауыстырылғанын қаласақ, парольді енгізген сияқты (мысалы, жұлдызшамен), онда бұл қасиетке сол символды енгізу қажет. Бірақ Multiline қасиетінің мәні ‘false’ болуы керек.

5)        Readonly - пайдаланушы компоненттің өрісіндегі мәтінді ауыстыра алады ма жоқ па анықтайды: қасиет мәні true болса- ауыстыра алмайды, мәні false жағдайда- ауыстыра алады.

6)        Text -  бұл қасиет көмегімен мәтіннің бір жолы енгізіледі/шығарылады.

7)        TextAlign – бұл қасиет компонент өрісінде мәтінді туралауды, туралау әдістері тізімінен тандау арқылы жүзеге асырылады (сол жақ, оң жақ немесе өріс ортасы бойынша).

8)        wordwrap – символдарды автоматты түрде жаңа жол басына көшіруге мүмкіндік береді.

9)         MaxLength’мәтін өрісі’ басқару элементіне енгізуге немесе қосуға болатын белгілердің максималды санын береді немесе алады.

TextBox- тың кейбір әдістері 1.2 кестесінде көрсетілген.

Button Windows- тың «Түйме» басқару элементі болып табылады.

Егеp түйменің фокусы болса, онда оны  ЕНГІЗУ немесе БОС_ОРЫН пернелері көмегімен  тандауға болады.

Түйменің фокусы болмаса да, түймені ЕНГІЗУ немесе ESC пернелері арқылы басу мүмкін болу үшін Form үшін AcceptButton немесе CancelButton қасиеттерін тандаңыз.

Түйменін сыртқы көрінісін өзгертуге болады. Мысалы, веб- безендіруге ұқсас ету үшін FlatStyle мәнін FlatStyle::Flat деп беріңіз. FlatStyle қасиетіне FlatStyle::Popup мәнін меншіктесек, түйме жалпақ болып көрінеді, ал оған тышқан көрсеткішін тураласақ, оның түрі  Windows түймесінің стандартты сыртқы көрінісін қабылдайды.

1.2 кесте - Техt компонентінің кейбір әдістерінің тізімі

Әдіс аты

Сипаттамасы

AppendText

Компоненттің терезесіндегі ағымдағы мәтінге мәтін қосады

Clear

Енгізу/шығару өрісінен барлық мәтінді жояды

Сору

Тандалған жолдарды жадыға көшіріп жазады

CreateGraphics

Бұл әдіс көмегімен компонентте сурет салу үшін графикалық объектіні құруға болады

Сut

Енгізу/шығару өрісіндегі іріктелген жолдар жиынын кесіп алып жадыға орналастырады

DeselectAll

Компонентте жолдардың іріктелген күйін алып тастайды

Dispose

Жадыдан компонент алған бос емес қорларды жояды

Focus

Компонентке енгізу фокусын орнатады

Hide

Компонентті пайдаланушыдан жасырады

Paste

Енгізу/шығару өрісіндегі ағымдағы іріктемені жады мазмұнымен ауыстырады

Select

Компонент ішіндегі берілген мәтінді тандайды

Select All

Компонент ішіндегі барлық мәтінді тандайды

Show

Компонентті шығарады (көрінетін қылады)

Undo

Енгізу өрісінде соңғы редакциялау операциясын  орындатпау

Қалыпты құрастыру кезеңдеру.

Құрастыру кезенінде (қолданбалының қалыпын құру) қажет компоненттерін тандап, қалыпқа орналастырады: компонент үстінде тышқанның сол жақ тетігін басып, қалыптың үстінде қай жерге орналастырасыз сол жерге тышқанның сол жақ тетігін басу арқылы орындалады.

TextBox, Label, Button элементтерін қалыпқа орналастырыңыз (1.2 суретті қара).

1.1 сурет – Қалыпта элементердің орналасуы

Программалау кезеңдері.

Әр компонент анықты бір уақиғалар жиынына жауап қайтарады. Компоненттің қандай уақиғалар жиынына әсер ететінің анықтау үшін оны қалыпта тышқан көмегімен ерекшелеп, «Қасиеттер» терезесінің  «Уақиғалар» парағына көшу қажет.

Парақ екі бағанадан тұрады. Бірінші бағанда компонент жауап қайтаратын уақиғалардың аты жазылған, екінші бағанда бағдарламаны жазушы құрған уақиғаларды өндеушілердің атауларын жазады.

Уақиғаларды өндеуші мысалы:

Түймені басқаннан кейін программа жабылады.

Санды жолға және кері түрлендіру.

Text қасиеті String^ типіне ие, яғни String  типті объектіге басқарылатын көрсеткіш. Сонымен, сандық мәліметерді енгізу/шығаруды ұйымдастыру үшін жолды санға және керісінше түрлендіруді ұйымдастыру қажет. Мұны жүзеге асыру үшін бір типті екінші типке түрлендіретін статикалық әдістері бар Convert класы шақырылады. Біздін есебіміз үшін келесі әдістер тиімді:

ToString() –кез келген сандық типтін мәнің String типті мәнге түрлендіреді.

ToDouble() – жолды қос дәлме- дәлді заттық мәңге (double) түрлендіреді.

ToSingle() – жолды дәлме- дәлді заттық мәңге (float) түрлендіреді.

ToInt32() – жолды int типті мәнге түрлендіреді.

Мысал ретінде textbox компонентінен сандық мәнді оқып алып, 2-ге көбейтіп, нәтижесін label-гі орналастырамыз. Сәйкесінше уақиғаны өңдеуші келесідей болады:

System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {

             float i = Convert::ToSingle(TextBox1->Text);

            i = i * 2;

            Label1->Text = Convert::ToString(i);

   }

Parse әдісін де пайдалану ыңғайлы. Мысалы:

int a=a.Parse(textBox1->Text);

Тапсырманы орындау үшін  уақиғаны өңдеушіде Button1 түймесін басу кодты енгізуді талап етеді:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {

float a,b,c;

                             a=a.Parse(textBox1->Text);

                             b=b.Parse(textBox2->Text);

                             c=a*b;

                             Label1->Text=c.ToString();

                              }

Программалау кезеңі аяқталды.

Енді жобаны сақтап, программаны іске қосу қажет.

Программа листингісін А қосымшасынан қараңыз.

Бақылау сұрақтары:

1)        Визуалды компоненттері қай кітапханада сақталған?

2)        Қалып қай класпен сипатталған?

3)        Жүзеге асыру модулінде компилятордың қай директивасы бар?

4)        TextBox, Label, Button қайда орналасқан?

5)        Уақиға дегеніміз не?

6)        Қалып не үшін қажет?

7)        Мәліметтерді енгізу үшін қандай компоненттер қажет?

8)        Уақиғаларды өндеуші дегеніміз не?

2 Зертханалық жұмыс № 2. ListBox компонентің пайдалану

Жұмыс мақсаты: ListBox компонентің пайдалануды меңгеру.

2.1 Тапсырма

Компоненттерді пайдаланып қолданбаны құру қажет, мұнда тышқан көмегімен тізбектен қажет мән таңдалған соң  экранда мәтіндік өрістер түрінде тандалған элементтер тізбегі көрсетіледі. Тапсырма нұсқаларын 2.1 кестесінен қараңыз.

2.1 кесте – Тапсырма нұсқалары

Нұсқа №

Тапсырма

1

Тізімнен европа елдерінде болған   клиенттерді шығарыңыз (тізім өрістері: елдің атауы, болу ұзақтығы, қонақ үйдің атауы, саяхаттың бағасы)

2

Тізімнен анықты кеңсе тауарларды шығарыңыз (тізім өрістері: тауардың коды, өндіруші-фирма, тауардың бағасы, мөлшері)

3

Тізімнен автосервистің анықты қызметі туралы  мәліметтерді шығарыңыз (тізім өрістері: қызмет түрі, қызметтің бағасы, қызметті атқарушының аты-жөні)

4

Кітаптар тізімінен нақты бір жылда басылған кітаптарды шығарыңыз  (тізім өрістері: автордың аты-жөнi, басылған жылы, баспа, бағасы)

2.1 кестесінің соңы

5

Тізімнен нақтылы курста оқитын студенттерді шығарыңыз (тізім өрістері: студенттердiң аты-жөнi, тобы, оқуға түскен жылы, гранд/ ақылы оқу)

6

Тізімнен нақтылы айда рейс тындырған жүргiзушiлердiң фамилияларың шығарыңыз (тізім өрістері: фамилиясы, рейстiң коды, жөнелту бекеті, ұзақтығы, ақысы)

7

Тізімнен нақты қалаға ұшатын рейстердi шығарыңыз (тізім өрістері: қала, келу мерзімі, келу уақыты, ұшақ түрi, әуе тасымалдауышының атауы)

8

Тізімнен емханада есепке алынған аурулардан нақтылы диагноз қойылған ауруларды  шығарыңыз (тізім өрістері: аурудың жасы, диагнозы, келу мерзімі, емдеушi дәрiгердiң аты-жөнi)

9

Тізімнен нақтылы пәндерді жетектейтін дәріс оқушылардың тiзiмдерін шығарыңыз (тізім өрістері: кафедраның атауы, пән, дәріс оқушының аты-жөні, кредиттер саны, семестрдің нөмірі, ассистенттердiн аты-жөнi)

10

Тізімнен нақтылы мерекелiк жиынына қосылған кондитер бұйымдардың атауын шығарыңыз (тізім өрістері: кәмпиттердiң атауы, бағасы, шығарылған қүні, өндіруші- фирма)

11

Тізімнен кинофестивальда сыйлықақы алған фильмдердiң тiзiмдерiн шығарыңыз (тізім өрістері: фильмнiң атауы, режиссердiң аты-жөнi, ел, шығарылған жылы)

12

Машиналардың иелерi тiзiмiнен белгілі марка бойынша тізімдерді шығарыңыз (тізім өрістері: шығарылған жылы, қозғалтқыш көлемi, машинаның бағасы, сатып алынған күні)

13

Спорт клуптың клуб карталарының атауларынан тұратын тiзiмдерді шығарыңыз (тізім өрістері: қызметтердiң атауы, бағасы, бару уақыты, бару мерзiмi)

14

Иттер байкауынын жеңімпаздарын тізім ттүрінде шығарыңыз (тізім өрістері: иттің аты, жыл, иесінiң аты-жөнi, иттiң жасы)

15

Кредит алған клиенттер тiзiмдерiн шығарыңыз (тізім өрістері: клиенттің аты-жөні, кредиттiң атауы, кредиттеу мерзiмi, кредиттеудiң сомасы, пайыздық мөлшері)

2.2 Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

ListBox  таңдауға болатын элементтердің тізімін құрады.

2.2 кесте – Негізгі қасиеттері

Аты

Сипаттамасы

ActualHeight

Берілген элементтің көрінетін биіктігін қайтарады

ActualWidth

Берілген элементтің көрінетін енін қайтарады

FontSize

Кәріп өлшемін алады немесе қайтарады

Items

ItemsControl мазмұнын генерациялау үшін пайдаланатын топтаманы қабылдайды

Name

Элементпен теңестірілетін атты береді немесе қайтарады. Бұл ат уақиғаны өндеуші кодынан ерекшіленген кодпен мысалы, XAML процессоры өндеу барысында құрылған белгілеу элементіне бұруға мүмкіндік береді

Width

Элементтің енін береді немесе қайтарады 

2.3 кесте- Негізгі әдістер

Аты

Сипаттамасы

AddText

ItemsControl объектісіне берілген мәтіннен тұратын жолды қосады

FindName

Идентификатордың аты бойынша элементті табады

FindResource

Кілті көрсетілген қорға іздеу ұйымдастырады және іздеу ұйымдастырылған қор табылмаған жағдайда ерекшілікті шақырады

SelectAll

ListBox-та барлық элементтерді таңдайды

UnselectAll

ListBox-ғы барлық таңдауларды жоққа шығарады

Программаны құру.

Қалыпта компоненттер даналарын 2.1 суретіне сәйкес орналастырыңыз.

2.1 сурет – Элементтердің қалыпта орналасуы

label1– RGB үлгісінде түстер анықтамасы

label2- Түстер RGB үлгісінде

button1–аудару

 - listbox1

listbox объектісін ерекшелейміз, Items қасиетін тандаймыз. Редактор терезесінде түстер атауларын (әр қайсысын жаңа жолдан) енгіземіз (2.2 суретті қара).

2.2 сурет- Жолдар топтамасының редакторы және қасиеттер терезесі

 «Аудару» түймесін жандандырыңыз және button1_Click өндеушінің тақырыпша жолына келесі мәтінді жазыңыз:

switch(listBox1->SelectedIndex)

{

case 0: label3->Text=L"қара OOOOOO";break;

case 1: label3->Text=L"ақ FFFFFF";break;

case 2: label3->Text=L"қызыл FFOOOO";break;

case 3: label3->Text=L"жасыл OOFFOO";break;

case 4: label3->Text=L"көгілдір OOFFFF";break;

case 5: label3->Text=L"көк OOOOFF";break;

case 6: label3->Text=L"күлгін FFOOFF";break;

case 7: label3->Text=L"сары FFFFOO";break;

case 8: label3->Text=L"қоңыр 996633";break;

case 9: label3->Text=L"қызғылт сары FF8000";break;

case 10: label3->Text=L"жөкенің түсі 8000FF";break;

case 11: label3->Text=L"сұры AOAOAO";break;

}

 Жобаны сақтаңыз және іске қосыңыз. Қолданбалы жұмысының нәтижесін 2.3 суретінен қараңыз.

2.3 сурет – Қолданбалы жұмысының нәтижесі

программа листингісін Б қосымшасынан қараңыз.

Бақылау сұрақтары:

1)        ListBox компоненті қай панельді орналасқан?

2)        Object Inspector терезесі қандай қызмет атқарады?

3)        Қалып файлының қеңейтпесі қандай?

4)        ListBox қандай қызмет атқарады?

5)        ListBox компонентінің қандай қасиеті шрифт өлшемін береді?

6)        ListBox барлық элементтерді қай әдіс тандайды?

7)        ItemsControl объектісіне мәтіндік жолды қай әдіс қосады?

8)        ListBox компоненттің қандай қасиеті элементтің енін қайтарады?

3 Зертханалық жұмыс №3. CheckListBox ажыратқыштардың тізімі

Жұмыс мақсаты: CheckListBox басқару компоненттерімен танысу және қолданбалыларды құру кезінде пайдалануын үйрену.

3.1 Тапсырма

Мәліметтерді таңдаған соң, оларды мәліметтер өрісіне шығаратын қолданбаны құрыңыз. Тапсырмалардың нұсқаларын 3.1 кестеден қараңыз.

3.1 кесте – Тапсырмалар нұсқалары

Нұсқа №

Тапсырма

1

Тізімнен европа елдерінде болған   клиенттерді шығарыңыз (тізім өрістері: елдің атауы, болу ұзақтығы, қонақ үйдің атауы, саяхаттың бағасы)

2

Тізімнен анықты кеңсе тауарларды шығарыңыз (тізім өрістері: тауардың коды, өндіруші-фирма, тауардың бағасы, мөлшері)

3

Тізімнен автосервистің анықты қызметі туралы  мәліметтерді шығарыңыз (тізім өрістері: қызмет түрі, қызметтің бағасы, қызметті атқарушының аты-жөні)

4

Кітаптар тізімінен нақты бір жылда басылған кітаптарды шығарыңыз  (тізім өрістері: автордың аты-жөнi, басылған жылы, баспа, бағасы)

5

Тізімнен нақтылы курста оқитын студенттерді шығарыңыз (тізім өрістері: студенттердiң аты-жөнi, тобы, оқуға түскен жылы, гранд/ ақылы оқу)

6

Тізімнен нақтылы айда рейс тындырған жүргiзушiлердiң фамилияларың шығарыңыз (тізім өрістері: фамилиясы, рейстiң коды, жөнелту бекеті, ұзақтығы, ақысы)

7

Тізімнен нақты қалаға ұшатын рейстердi шығарыңыз (тізім өрістері: қала, келу мерзімі, келу уақыты, ұшақ түрi, әуе тасымалдауышының атауы)

8

Тізімнен емханада есепке алынған аурулардан нақтылы диагноз қойылған ауруларды  шығарыңыз (тізім өрістері: аурудың жасы, диагнозы, келу мерзімі, емдеушi дәрiгердiң аты-жөнi)

9

Тізімнен нақтылы пәндерді жетектейтін дәріс оқушылардың тiзiмдерін шығарыңыз (тізім өрістері: кафедраның атауы, пән, дәріс оқушының аты-жөні, кредиттер саны, семестрдің нөмірі, ассистенттердiн аты-жөнi)

3.1 кестесінің соңы

10

Тізімнен нақтылы мерекелiк жиынына қосылған кондитер бұйымдардың атауын шығарыңыз (тізім өрістері: кәмпиттердiң атауы, бағасы, шығарылған қүні, өндіруші- фирма)

11

Тізімнен кинофестивальда сыйлықақы алған фильмдердiң тiзiмдерiн шығарыңыз (тізім өрістері: фильмнiң атауы, режиссердiң аты-жөнi, ел, шығарылған жылы)

12

Машиналардың иелерi тiзiмiнен белгілі марка бойынша тізімдерді шығарыңыз (тізім өрістері: шығарылған жылы, қозғалтқыш көлемi, машинаның бағасы, сатып алынған күні)

13

Спорт клуптың клуб карталарының атауларынан тұратын тiзiмдерді шығарыңыз (тізім өрістері: қызметтердiң атауы, бағасы, бару уақыты, бару мерзiмi)

14

Иттер байкауынын жеңімпаздарын тізім ттүрінде шығарыңыз (тізім өрістері: иттің аты, жыл, иесінiң аты-жөнi, иттiң жасы)

15

Кредит алған клиенттер тiзiмдерiн шығарыңыз (тізім өрістері: клиенттің аты-жөні, кредиттiң атауы, кредиттеу мерзiмi, кредиттеудiң сомасы, пайыздық мөлшері)

3.2 Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

CheckedListBoxListBox объектісін көрсететін ажыратқыш. Онда жалау әр элементтің сол жағында көрсетіледі.

 

3.2 кесте – Негізгі қассиеттері

Аты

Сипаттамасы

CheckedIndices

CheckedListBox нақтылы басқару элементінде индекстері белгіленген топтамасы.

CheckedItems

CheckedListBox нақтылы басқару элементінде белгіленген элементтер топтамасы.

CheckOnClick

Алынған немесе берілген мәнге байланысты элемент тандалғанда жалауды айырып қосу қажеттілігін шешеді.

DefaultSize

Басқару элементінің өлшемін үнсіз жағдай бойынша алады. (ListBox-тан қалған енші)

Size

Басқару элементінің енін және биіктігін береді немесе қайтарады.

 

3.2 кестесінің соңы

 

Text

ListBox басқару элементінде нақтылы уақытта таңдалған орыннан бастап мәтінді іздейді немесе алады  (ListBox-тан қалған енші)

3.3 кесте – Негізгі әдістер

Аты

Сипаттамасы

CreateItemCollection

Позициялар топтамасының жаңа данасын құрады. (ListBox::CreateItemCollection() жаңадан анықтау)

GetItemText

Көрсетілген элементтің мәтін түрінде көрінісін қайтарады.

GetItemChecked

Берілген элемент белгіленгенін көрсететін мәнді қайтарады.

Hide

Басқару элементті пайдаланушыдан жасырады.

RefreshItems

CheckedListBox-тың барлық элементтерінің синтаксистік талдауын тағы орындайды

және элементтер үшін жаңа мәтіндік жолдарды алады (ListBox::RefreshItems() жаңадан анықтау)

Программа құру.

3.1. суретіне сәйкес қалыпқа компонент даналарын орналастырыңыз:

3.1 сурет- Компоненттерді қалыпқа орналастыру

Аудитория –label1

Программалар –label2

Ескертпе –label3

Бос өріс-textbox1


3.2 сурет - ListBox1

3.3 сурет - CheckListBox1

listbox объектісін ерекшелейміз, Items қасиеті арқылы, оң жағында орналасқан үш нүкте түймесіне басып мәліметтерді енгіземіз. Ашылған редактор терезесінде аудитория атауларын енгіземіз, әр қайсысын жаңа жолдан (3.4 суретін қара).

3.4 сурет – Жолдар топтамасының редакторы

Checklistbox объектісін ерекшелеп, Items қасиеті арқылы, оң жағында орналасқан үш нүкте түймесіне басып мәліметтерді толтырамыз. Ашылған редактор терезесінде программалардың атауларын енгіземіз, әр қайсысын жаңа жолдан(3.5 суретін қара).

3.5 сурет – Жолдар топтамасының редакторы

ListBox1 объектісін екі рет шертіп жандандырамыз және дайындалып жатқан өндеушіге мәтінді енгіземіз.

Жобаны сақтаңыз және қолданбалыны іске қосамыз. Қолданбалы жұмысының нәтижесі 3.6 суретінде көрсетілген.

3.6 сурет – Қолданбалы жұмысының нәтижесі

Программа листингісін В қолданбасынан қараңыз.

Бақылау сұрақтары:

1)        Неге CheckedListBox компонентін тәуелсіз ажыратқыш деп таниды?

2)        CheckedListBox компоненті қай панельде орналасқан?

3)        CheckedListBox компонентінін қай қасиеті элементтің енін және биіктігін береді?

4)        CheckedListBox компонентінін қай әдісі позициялар топтамасының жаңа данасын құрады?

5)        CheckedListBox компонентінін қай қасиеті басқару элементінін өлшемін үнсіз жағдай бойынша алады?

6)        CheckedListBox компонентінін қай қасиеті элементті тандағанда жалауды ажыратып қосу үшін мәнді береді?

7)        Қалыпты көрсету үшін қай қасиеттін мәні True болуы тиіс?

8)        CheckedListBox компонентінің қай әдісі көрсетілген элементтін мәтіндік көрінісін қайтарады?

4 Зертханалық жұмыс  № 4. DataGridView компонентін пайдалану

Жұмыс мақсаты: DataGridView компонентімен танысу. Компонент бағандарына әртүрлі типті мәліметтерді қосуды үйрену.

4.1  Тапсырма

Бағандары  (DataGridViewTextBoxColumn, DataGridViewTextBoxColumn, DataGridViewComboBoxColumn, DataGridViewCheckBoxColurnn,  DataGridViewTextBoxColumn) типті кесте құрыңыз (мысалы, Аты, Фамилиясы, Жынысы, Жекеше адам, E-mail) сәйкесінше. Сұраныс бойынша мәліметтерді шығарыңыз. Тапсырмалар нұсқаларын 4.1- кестесінен қараңыз.

4.1 кесте – Тапсырмалар нұсқалары

Нұсқа №

Тапсырма

1

Тізімнен европа елдерінде болған   клиенттерді шығарыңыз (тізім өрістері: елдің атауы, болу ұзақтығы, қонақ үйдің атауы, саяхаттың бағасы)

2

Тізімнен анықты кеңсе тауарларды шығарыңыз (тізім өрістері: тауардың коды, өндіруші-фирма, тауардың бағасы, мөлшері)

3

Тізімнен автосервистің анықты қызметі туралы  мәліметтерді шығарыңыз (тізім өрістері: қызмет түрі, қызметтің бағасы, қызметті атқарушының аты-жөні)

4

Кітаптар тізімінен нақты бір жылда басылған кітаптарды шығарыңыз  (тізім өрістері: автордың аты-жөнi, басылған жылы, баспа, бағасы)

5

Тізімнен нақтылы курста оқитын студенттерді шығарыңыз (тізім өрістері: студенттердiң аты-жөнi, тобы, оқуға түскен жылы, гранд/ ақылы оқу)

6

Тізімнен нақтылы айда рейс тындырған жүргiзушiлердiң фамилияларың шығарыңыз (тізім өрістері: фамилиясы, рейстiң коды, жөнелту бекеті, ұзақтығы, ақысы)

7

Тізімнен нақты қалаға ұшатын рейстердi шығарыңыз (тізім өрістері: қала, келу мерзімі, келу уақыты, ұшақ түрi, әуе тасымалдауышының атауы)

8

Тізімнен емханада есепке алынған аурулардан нақтылы диагноз қойылған ауруларды  шығарыңыз (тізім өрістері: аурудың жасы, диагнозы, келу мерзімі, емдеушi дәрiгердiң аты-жөнi)

9

Тізімнен нақтылы пәндерді жетектейтін дәріс оқушылардың тiзiмдерін шығарыңыз (тізім өрістері: кафедраның атауы, пән, дәріс оқушының аты-жөні, кредиттер саны, семестрдің нөмірі, ассистенттердiн аты-жөнi)

4.1 кестесінің соңы

10

Тізімнен нақтылы мерекелiк жиынына қосылған кондитер бұйымдардың атауын шығарыңыз (тізім өрістері: кәмпиттердiң атауы, бағасы, шығарылған қүні, өндіруші- фирма)

11

Тізімнен кинофестивальда сыйлықақы алған фильмдердiң тiзiмдерiн шығарыңыз (тізім өрістері: фильмнiң атауы, режиссердiң аты-жөнi, ел, шығарылған жылы)

12

Машиналардың иелерi тiзiмiнен белгілі марка бойынша тізімдерді шығарыңыз (тізім өрістері: шығарылған жылы, қозғалтқыш көлемi, машинаның бағасы, сатып алынған күні)

13

Спорт клуптың клуб карталарының атауларынан тұратын тiзiмдерді шығарыңыз (тізім өрістері: қызметтердiң атауы, бағасы, бару уақыты, бару мерзiмi)

14

Иттер байкауынын жеңімпаздарын тізім ттүрінде шығарыңыз (тізім өрістері: иттің аты, жыл, иесінiң аты-жөнi, иттiң жасы)

15

Кредит алған клиенттер тiзiмдерiн шығарыңыз (тізім өрістері: клиенттің аты-жөні, кредиттiң атауы, кредиттеу мерзiмi, кредиттеудiң сомасы, пайыздық мөлшері)

4.2  Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

NET Framework мәліметтері бар кестелерді қарау үшін аты DataGridView класты ұсынады (4.1 суретті қараңыз). Сол себептен мәліметтері бар кестені программа көмегімен көрсету үшін DataGridView типі айнымалыны хабарлау керек және қалыпты басқару элементер топтамасына қосу қажет.

4.1 сурет- DataGridView элементтер панелінде.

Қалып қыстырмасында компонент 4.1 суреттегідей болады.

4.2 сурет - DataGridView қолданбалының қалыпында

Мәліметтер торының түрі бағандардан тұратын кесте сияқты көрінеді. Бағандар тордың мәліметтерін ақпарат санатында көруді ұйымдастырады. Мәліметтер торын бағандар түрінде көрсету үшін DataGridView классының аты Columns.DataGridView::Columns; қасиетін пайдаланамыз, қасиеттің типі DataGridViewColumnCollection және анықталуы:

public ref class DataGridViewColumnCollection : public BaseCollection, IList, ICollection,IEnumerable;

Бұл класс IList,  ICollection және  IEnumerable интерфейстерін ұйымдастырады. Сонымен,  DataGridViewColumnCollection классын бағандарды басқару және құру үшін пайдалана аласыз.

Тапсырманы орындау.

DataGridView элементтерін қалыпта орналастырыңыз.

Data GridView  компонентінде «Бағандарды түзету»-ді таңдаймыз, терезеде бағандардың аттарын береміз, header қасиетінің text опциясын таңдаймыз және әр баған үшін қажет типті көрсетеміз (4.3 суретті қара).

4.3 сурет- Бағандарды түзету терезесі

OnClick өндеушіге мәтін орналастырамыз:

dataGridViewl->Rows[0]->Cells[0]->Value = "Alexandr";

 dataGridViewl->Rows[0]->Cells[l]-> Value = "Ivanov";

 dataGridViewl->Rows[0]->Cells[2]->Value = "еркек";

 dataGridViewl->Rows[0]->Cells[3]->Value = true;

dataGridViewl ->Rows[0]->Cells[4]->Value = "jahrakal@inbox.ru";

Жобаны сақтаймыз (нәтижесін 4.4 суретінен қараңыз).

4.4 сурет – Орындалу нәтижесі

Бақылау сұрақтары:

1)        DataGridView компоненті қай панельде орналасқан?

2)        DataGridView компоненті не үшін қажет?

3)        Мәліметтер торын бағандар түрінде қай қасиет анықтайды?

4)        Бағандарды басқару үшін қандай интерфейстер пайдаланылады?

5)        Бағандарда қандай мәліметтердің типтерін пайдалануға болады?

6)        Жолдық мәліметтерді сандық мәліметтерге түрлендіру функцияларын атаңыз?

7)        Protected бөлімі қандай қызмет атқарады?

8)        Құрылымдаушы дегеніміз не?

5 Зертханалық жұмыс №5. MenuStrip компонентін пайдаланып жобаны құру

Жұмыс мақсаты: MenuStrip компонентін пайдаланып, қолданбалыларды құруды үйрену.

5.1 Тапсырма

Қыстырмалары ретінде алдында орындаған зертханалық жұмыстар болатын мәзірден және программадан шығу мүмкіндігі бар қолданбаны құрыңыз.

5.2 зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

MenuStrip  MainMenu-дің орнын басатын, жоғары деңгейдегі контейнер болып табылады. Ол кілттерді басқаруды және MDI интерфейсі мүмкіндіктеріне қол жеткізуді қамтиды. Функциональды ToolStripDropDownltem ^ToolStripMenuItem MenuStrip-пен жұмыс жасайды. Объектілермен жан жақты пайдалану үшін негізделген келесі элементтер бұл ToolStripSystemRenderer және ToolStripProfessionalRenderer. Үнсіз жағдай бойынша өндеу барысында MenuStrip басқару элементі үшін оларға қол жеткізуге болады :

1)       ToolStripMenuItem.

2)       ToolStripTextBox.

3)       ToolStripComboBox.

MenuStrip басқару элементі қалып мәзірінің құрылымы үшін контейнер болып табылады. ToolStripMenuItem объектілерін мәзірдін бөлек командалары болып табылатын MenuStrip объектілері қосуға болады. ToolStripMenuItem-тың әр объектісі қолданбалының командасы немесе ішкі мәзірдің элементтері үшін аналық мәзір болуы мүмкін.

MenuStrip басқару элементі MainMenu-ның алғашқы нұсқаларыңдағы басқару элементін ауыстырады және оның функционалды мүмкіндіктерін кеңейтеді. Бірақ MainMenu басқару элементі кері тіркесушілікті қамтамасыздандыру үшін қолданылады

5.1 кесте- Компоненттін қасиеттер тізбегі

Аты

Сипатамасы

AutoSize

Басқару элементі үшін тағайындалған шрифтті өзгеруіне байланысты басқару элементтің биіктігі автоматты түрде ілесуін көрсететін мәнді береді немесе алады. (TextBoxBase-тан қалған)

BackColor Font

Басқару элементінің фонының түсін береді немесе алады (TextBoxBase-тан қалған)

ReadOnly

Басқару элементімен көрсетілетін мәтіннің шрифтін береді немесе қайтарады. (Control-дан қалған)

BackColor Font

Мәтіндік өрістегі мәтін тек қана оқу үшін екенін көрсететін мәнді береді немесе алады. (TextBoxBase-тан қалған)

SelectedText

Ағымдағы уақытта басқару элементте тандалған мәтінді көрсететін мәнді береді немесе алады. (TextBoxBase-тан қалған)

Тапсырманы орындау.

Тандалған MenuStrip компонентті қалыпқа орналастырыңыз, ол визуалды емес болғандықтан қалыпта көрінбейді (5.1 суретті қара).

5.1 сурет- MenuStrip компонентін саймандар панелінен тандау

Мәзірде түймелерді құрыңыз (5.2 суретті қара) және сәйкес әрекеттерді өңдеушіге беріңіз.

5.2 сурет- Құжат құрылымы

Жобаны сақтау (5.3 суретті қара).

5.3 сурет- Сақталған жобаның түрі

Бақылау сұрақтары:

1)        MenuStrip компоненті қай панельді орналасқан?

2)        MenuStrip компоненті қандай қызмет атқарады?

3)        MenuStrip компоненті қандай мүмкіндіктер береді?

4)        Басқару элементі фонының түсін қай қасиет береді?

5)        Басқару элементімен көрсетілетін мәтін кәрпін қай қасиет қайтарады?

6)        Жүзеге асыру бөлімі дегеніміз не?

7)        Рublic бөліміне не жазылады?

8)        Әдіс дегеніміз не?

6 Зертханалық жұмыс № 6. Сұхбаттасу терезелері

Жұмыс мақсаты: сұхбаттасу терезелерімен танысу.

6.1 Тапсырма

Файлды тандау үшін сұхбаттасу терезесін құру және №5 зертханалық жұмыс үшін түсініктемелер қосу.

6.2 Зертханалық жұмысты орындауға арналған әдістемелік нұсқаулар

OpenFileDialog компоненті.

Компонент All Windows Forms компонентер тақтайшасы тізімінде орналасқан. Ол файлды тандауға арналған, экранда файлды тандау және ашу үшін Windows-тың стандартты терезесі шығарылады.

Файлды іздеу бойынша сұхбатты бастау үшін ShowDialog() әдісін пайдалану қажет. Егер MultiSelect қасиетінін мәнін true деп орнатсақ, онда бір топ файлдарды тандауға болады.

ShowReadOnly қасиетін пайдалансақ «тек оқуға» типті файлдардың қасында қанат белгісі шығады.

Filter  қасиеті файлдарды сүзу шарттарын қоюға мүмкіндік береді.

Компонентті қосқан соң, ол қалыпта көрінбейді және қалып дизайнері терезесінін төмеңгі бөлігінде орналасқан арнаулы түпқоймаға орналастырады. (көптеген басқа да компоненттер сияқты, мысалы ImageList, Timer және т.б).

Егер файл емес мұқаба ашылуы тиіс болса, FolderBrowserDialog класын пайдалану қажет.

Файлды ашу үшін сұхбаттасу терезе қолданбаның орындалу барысында ShowDialog әдісі орындалып жатқан уақытта көрінеді. Пайдаланушы сұхбаттасу терезесінде ашу түймесін басқан кезде (немесе Open— бұл Windows нұсқасынан тәуелді), ShowDialog әдісі қалыптың тура осы қасиеті мәнімен салыстырылып DialogResult мәнін қайтарады. Ал қалыпта біз оны ок деп орнатамыз. Егер қайтарылған мән ок болса, әдіс қатесіз жұмыс жасағаны және терезе ашылғаны. Енді егер терезеде «Ашу» түймесін бассақ, терезе жабылып, тандалған файлдың аты алып пайдалануға болатын filename компонентінің қасиетіне орналастырылады.

6.4 суретінде мәтіндік файлды тандау компонентінің жұмыс нәтижесі көрсетілген. Filter қасиетіндегі түзу жолу барлық файлдар немесе мәтіндік файлдар үшін тандау ережелері бойынша беріледі

Сұхбаттасу терезесі ашылған соң Файл типі өрісінде барлық берілген типтерді көреміз.

Мұнда программаның бастапқы терезесін көреміз, «ашу» түймесін басамыз (6.1 суретті қара).

6.1 сурет –Программаның бастапқы терезесі

Файлды тандау терезесі ашылады, мұнда кеңейтпесі (*.txt) файлдарды тандаймыз (6.2 суретті қара).

6.2 сурет- Файлды тандау терезесі

ListBox терезесінде мәтінді аламыз (6.3 суретін қараңыз).

6.3 сурет- Мәтіндік файлды тандау бойынша жұмыс нәтижесі және мәтіндік файлды тандап мазмұның ListBox-ке шығару

Мысалы, егер барлық мәтіндік файлдарды және Word файлдары түзіп шығару қажет болса, түзу жолы келесідей болады:

TextFiles (*txt) | * txt| WordFiles (*doc),

ал типтер өрісінде екі жол болады:

Text Files *txt

Word Files *doc

Әрі қарай кез келген типті тандап, сәйкес файлдарды ашуға болады (типтің аты ақпарат үшін сұхбаттасу терезесінде шығады) (6.4 суретті қараңыз).


6.4 сурет-  OpenFileDialog қасиеті

Орындалу тәртібі.

Қалыпқа компоненттер даналарын 6.3 суретіне сәйкес орналастырыңыз.

6.5 сурет – Қолданбалы қалыпы

Қалып элементтері:

Label1->Caption(Мәтін шығарылатын терезе)

Button1,2

ListBox1

OpenFileDialog1

 

Төменгі және жоғары жағынан (***********) шектелген мәтінді қосу.

button1_Click уақиғасын өңдеушіге келесі мәтінді орналастырыңыз:

Stream^ s;

this->DialogResult= System::Windows::Forms::DialogResult::OK;

if (this->openFileDialog1->ShowDialog()== System::Windows::Forms::DialogResult::OK)

 {

if ( (s= this->openFileDialog1->OpenFile()) != nullptr )

{

String ^a=this->openFileDialog1->FileName;

char *ss=StrToChar (a);

LoadFromFile(ss, this->listBox1);

}

else

MessageBox::Show("Файлды ашудағы қате ");

}

Енді қолданбаны іске қосуға болады.

Бақылау сұрақтары:

1)        OpenFileDialog компоненті қайда орналасқан?

2)        OpenFileDialog компоненті не үшін қажет?

3)        Қандай сұхбаттасу терезелерін білесіз?

4)        Модалды терезе дегеніміз не?

5)        Модалды терезелер мен модалды емес терезелердің айырмашылығы неде?

6)        Деструктор дегеніміз не?

7)        Мәтіндік файлды қалай ашамыз?

8)        Түсініктемелер қалай қосылады?

А қосымшасы

#pragma once

namespace Му1лаба {

using namespace System;

using namespace System: :ComponentModel;

using namespace System::Collections;

using namespace System::Windows::Forms;

using namespace System: :Data;

using namespace System: :Drawing;

// <summary>

// Forml үшін ақпарат

//Назар аударыңыз! Бұл кластың атын өзгертсеңіз

//басқарылатын қорды компиляциялау құралдары үшін осы класс //тәуелді барлық .resx кеңейітпелі,  ("Resource File Name") қорлар //файлдарының қасиетін өзгерту қажет,

// әйтпесе құрастырушылар осы қалыпқа салыстырылатын      қорлармен  //дұрыс жұмыс істей алмайды.

//</summary>

public ref class Forml : public System:: Windows::Forms::Form {

public:

Forml (void)

{

InitializeComponent();

//

//TODO: құрастырушының кодын қосыңыз

//

}

protected:

// <summary>

//Барлық қорларды босату.

//</summary>

Forml()

{

if (components)

{

delete components;

}

}

private: System::Windows::Forms::ButtonA buttonl; protected:

private: System::Windows::Forms::TextBoxA textBoxl; private: System::Windows::Forms::TextBoxA textBox2; private: System::Windows::Forms::LabelA labell;

private:                                                 *

//<summary>

// Құрастырушының айнымалысы қажет.

//</summary>

System:: ComponentModel:: Container Components;

#pragma region Windows Form Designer generated code //<summary>

// Міндетті түрде болуы тиіс құрастырушыны қолдау үшін қажет //әдіс – бұл әдістің мазмұнын код редакторы көмегімен //өзгертпегендерің жөн.

// </summary>

void InitializeComponent(void)

{

this->buttonl = (gcnew System::Windows::Forms::Button()); this->textBoxl = (gcnew System::Windows::Forms::TextBox()); this->textBox2 = (gcnew System::Windows::Forms::TextBox()); this->labell = (gcnew System::Windows::Forms::Label()); this->SuspendLayout();

//

// button 1

//

this->buttonl->Location = System::Drawing::Point(63, 151); this->buttonl->Name = L"buttonl"; this->buttonl->Size = System::Drawing::Size(75, 23); this->buttonl->TabIndex = 0; this->buttonl->Text = L"buttonl"; this->buttonl->UseVisualStyleBackColor = true; this->buttonl->Click += gcnew System: :EventHandler(this, &Forml ::buttonl_Click);

//

// textBoxl

//

this->textBoxl->Location = System::Drawing::Point(63, 58); this->textBoxl->Name = L"textBoxl"; this->textBoxl->Size = System::Drawing::Size(100, 20); this->textBoxl->TabIndex = 1;

//

// textBox2

//

this->textBox2->Location = System: :Drawing::Point(63, 85); this->textBox2->Name = L"textBox2"; this->textBox2->Size = System::Drawing::Size(100, 20); this->textBox2->TabIndex = 2;

//

// label 1

//

this->labell-> AutoSize = true;

this->labell->Location = System: :Drawing::Point(63, 201); this->labell->Name = L"labell"; this->labell->Size = System::Drawing::Size(35, 13);

this->labell->TabIndex = 3; this->labell->Text = L"labell";

//

// Forml

//

this->AutoScaleDimensions = System: :Drawing::SizeF(6, 13);

this->AutoScaleMode = System:: Windows: :Forms::AutoScaleMode::Font;

this->ClientSize = System: :Drawing::Size(284, 262);

this->Controls->Add(this->label 1);

this->Controls->Add(this->textBox2);

this->Controls->Add(this->textBoxl);

this->Controls->Add(this->buttonl);

this->Name = L"Forml";

this->Text = L"Forml";

this->ResumeLayout(false);

this->PerformLayout();

}

#pragma endregion

private: System::Void buttonl_Click(System::ObjectA sender, System::EventArgsA e) {

float a,b,c;

a=a.Parse(textBoxl ->Text); b=b.Parse(textBox2->Text); c=a*b;

label 1 ->T ext=c .To String();

}

};

}

Б қосымшасы

Программа листингісі:

namespace laba2 {

using namespace System;

using namespace System::ComponentModel;

using namespace System::Collections;

using namespace System::Windows::Forms;

using namespace System::Data;

using namespace System::Drawing;

/// <summary>

/// Form1 үшін ақпарат

/// </summary>

public ref class Form1 : public System::Windows::Forms::Form

{

public:

       Form1(void)

       {

                 InitializeComponent();

                 //

                 //TODO: құрастырушы кодын қосыңыз

                 //

       }

protected:

       /// <summary>

       /// Барлық қорларды босату.

       /// </summary>

       ~Form1()

       {

       if (components)

       {

       delete components;

       }

       }

private: System::Windows::Forms::ListBox^  listBox1;

private: System::Windows::Forms::Button^  button1;

private: System::Windows::Forms::Label^  label1;

private: System::Windows::Forms::Label^  label2;

private: System::Windows::Forms::Label^  label3;

protected:

private:

/// <summary>

/// Құрастырушының айнымалысы қажет.

/// </summary>

System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code

/// <summary>

/// Міндетті түрде болуы тиіс құрастырушыны қолдау үшін қажет

///әдіс – бұл әдістің мазмұнын код редакторы көмегімен

///өзгертпегендерің жөн.

/// </summary>

void InitializeComponent(void)

{

       this->listBox1 = (gcnew System::Windows::Forms::ListBox());

       this->button1 = (gcnew System::Windows::Forms::Button());

       this->label1 = (gcnew System::Windows::Forms::Label());

       this->label2 = (gcnew System::Windows::Forms::Label());

       this->label3 = (gcnew System::Windows::Forms::Label());

       this->SuspendLayout();

       //

       // listBox1

       //

       this->listBox1->FormattingEnabled = true;

       this->listBox1->Items->AddRange(gcnew cli::array< System::Object^  >(12) {L"black", L"white", L"red", L"green", L"azure", L"blue", L"purple", L"yellow", L"brown", L"orange", L"violet", L"grey"});

       this->listBox1->Location = System::Drawing::Point(12, 26);

       this->listBox1->Name = L"listBox1";

       this->listBox1->Size = System::Drawing::Size(97, 160);

       this->listBox1->TabIndex = 0;

       //

       // button1

       //

       this->button1->Location = System::Drawing::Point(12, 192);

       this->button1->Name = L"button1";

       this->button1->Size = System::Drawing::Size(97, 23);

       this->button1->TabIndex = 1;

       this->button1->Text = L"Перевести";

       this->button1->UseVisualStyleBackColor = true;

       this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);

       //

       // label1

       //

       this->label1->AutoSize = true;

       this->label1->Location = System::Drawing::Point(9, 10);

       this->label1->Name = L"label1";

       this->label1->Size = System::Drawing::Size(221, 13);

       this->label1->TabIndex = 2;

       this->label1->Text = L" RGB форматындағы түстер анықтамасы";

       //

       // label2

       //

       this->label2->AutoSize = true;

       this->label2->Location = System::Drawing::Point(115, 26);

       this->label2->Name = L"label2";

       this->label2->Size = System::Drawing::Size(115, 13);

       this->label2->TabIndex = 3;

       this->label2->Text = L" RGB форматындағы түс";

       //

       // label3

       //

       this->label3->AutoSize = true;

       this->label3->Location = System::Drawing::Point(115, 48);

       this->label3->Name = L"label3";

       this->label3->Size = System::Drawing::Size(35, 13);

       this->label3->TabIndex = 4;

       this->label3->Text = L"label3";

       //

       // Form1

       //

       this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);

       this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;

       this->ClientSize = System::Drawing::Size(236, 222);

       this->Controls->Add(this->label3);

       this->Controls->Add(this->label2);

       this->Controls->Add(this->label1);

       this->Controls->Add(this->button1);

       this->Controls->Add(this->listBox1);

       this->Name = L"Form1";

       this->Text = L"Laba_2";

       this->ResumeLayout(false);

       this->PerformLayout();

       }

#pragma endregion

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^                               e) {

       switch(listBox1->SelectedIndex)

       {

case 0: label3->Text=L"қара OOOOOO";break;

case 1: label3->Text=L"ақ FFFFFF";break;

case 2: label3->Text=L"қызыл FFOOOO";break;

case 3: label3->Text=L"жасыл OOFFOO";break;

case 4: label3->Text=L"көгілдір OOFFFF";break;

case 5: label3->Text=L"көк OOOOFF";break;

case 6: label3->Text=L"күлгін FFOOFF";break;

case 7: label3->Text=L"сары FFFFOO";break;

case 8: label3->Text=L"қоңыр 996633";break;

case 9: label3->Text=L"қызғылт сары FF8000";break;

case 10: label3->Text=L"жөкенің түсі 8000FF";break;

case 11: label3->Text=L"сұры AOAOAO";break;

       }}

};

}

В қосымшасы

Программа листингісі:

#pragma once

namespace laba3 {

using namespace System;

using namespace System::ComponentModel;

using namespace System::Collections;

using namespace System::Windows::Forms;

using namespace System::Data;

using namespace System::Drawing;

/// <summary>

/// Form1 үшін ақпарат

/// </summary>

public ref class Form1 : public System::Windows::Forms::Form

{

public:

Form1(void)

{

InitializeComponent();

//

//TODO: құрастырушының кодын қосыңыз

//

}

protected:

/// <summary>

/// Барлық қорларды босаты.

/// </summary>

~Form1()

{

if (components)

{

delete components;

}

}

private: System::Windows::Forms::CheckedListBox^  clb1;

protected:

private: System::Windows::Forms::ListBox^  listBox1;

private: System::Windows::Forms::Label^  label1;

private: System::Windows::Forms::Label^  label2;

private: System::Windows::Forms::TextBox^  textBox1;

private: System::Windows::Forms::Label^  label3;

protected:

private:

/// <summary>

/// Құрастырушыңың айнымалысы қажет.

/// </summary>

System::ComponentModel::Container ^components;

#pragma region Windows Form Designer generated code

/// <summary>

/// Міндетті түрде болуы тиіс құрастырушыны қолдау үшін қажет

///әдіс – бұл әдістің мазмұнын код редакторы көмегімен

///өзгертпегендерің жөн.

/// </summary>

void InitializeComponent(void)

{

this->clb1 = (gcnew System::Windows::Forms::CheckedListBox());

this->listBox1 = (gcnew System::Windows::Forms::ListBox());

this->label1 = (gcnew System::Windows::Forms::Label());

this->label2 = (gcnew System::Windows::Forms::Label());

this->textBox1 = (gcnew System::Windows::Forms::TextBox());

this->label3 = (gcnew System::Windows::Forms::Label());

this->SuspendLayout();

//

// clb1

//

this->clb1->FormattingEnabled = true;

this->clb1->Items->AddRange(gcnew cli::array< System::Object^  >(12) {L"1С-Предприятие", L"MS Project", L"Visual C++", L"SQL Server", L"Delphi", L"LabView", L"MatLab", L"SystemView", L"MathCad", L"AutoCad", L"Borland Pascal", L"Turbo C++"});

this->clb1->Location = System::Drawing::Point(78, 27);

this->clb1->Name = L"clb1";

this->clb1->Size = System::Drawing::Size(120, 184);

this->clb1->TabIndex = 0;

//

// listBox1

//

this->listBox1->FormattingEnabled = true;

this->listBox1->Items->AddRange(gcnew cli::array< System::Object^  >(5) {L"430", L"434", L"435", L"437", L"429"});

this->listBox1->Location = System::Drawing::Point(13, 26);

this->listBox1->Name = L"listBox1";

this->listBox1->Size = System::Drawing::Size(59, 69);

this->listBox1->TabIndex = 1;

this->listBox1->SelectedIndexChanged += gcnew System::EventHandler(this, &Form1::listBox1_SelectedIndexChanged);

//

// label1

//

this->label1->AutoSize = true;

this->label1->Location = System::Drawing::Point(12, 9);

this->label1->Name = L"label1";

this->label1->Size = System::Drawing::Size(60, 13);

this->label1->TabIndex = 2;

this->label1->Text = L"Аудитория";

//

// label2

//

this->label2->AutoSize = true;

this->label2->Location = System::Drawing::Point(78, 9);

this->label2->Name = L"label2";

this->label2->Size = System::Drawing::Size(68, 13);

this->label2->TabIndex = 3;

this->label2->Text = L"Программалар";

//

// textBox1

//

this->textBox1->Location = System::Drawing::Point(204, 26);

this->textBox1->Multiline = true;

this->textBox1->Name = L"textBox1";

this->textBox1->ReadOnly = true;

this->textBox1->Size = System::Drawing::Size(100, 181);

this->textBox1->TabIndex = 4;

//

// label3

//

this->label3->AutoSize = true;

this->label3->Location = System::Drawing::Point(201, 9);

this->label3->Name = L"label3";

this->label3->Size = System::Drawing::Size(70, 13);

this->label3->TabIndex = 5;

this->label3->Text = L"Ескерту";

//

// Form1

//

this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);

this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;

this->ClientSize = System::Drawing::Size(318, 220);

this->Controls->Add(this->label3);

this->Controls->Add(this->textBox1);

this->Controls->Add(this->label2);

this->Controls->Add(this->label1);

this->Controls->Add(this->listBox1);

this->Controls->Add(this->clb1);

this->Name = L"Form1";

this->Text = L"Form1";

this->ResumeLayout(false);

this->PerformLayout();

}

#pragma endregion      

private: System::Void listBox1_SelectedIndexChanged(System::Object^  sender, System::EventArgs^  e) {

int i;

 for(i=0;i<12;i++)

this->clb1->SetItemCheckState(i,CheckState::Unchecked);

 switch(listBox1->SelectedIndex)

{case 0:

clb1->SetItemCheckState(2,CheckState::Checked);

clb1->SetItemCheckState(3,CheckState::Checked);

clb1->SetItemCheckState(4,CheckState::Checked);

clb1->SetItemCheckState(10,CheckState::Checked);

clb1->SetItemCheckState(11,CheckState::Checked);

textBox1->Text=L"Басқа программаларды орнатқан жөн ";

break;

case 1:

clb1->SetItemCheckState(1,CheckState::Checked);

clb1->SetItemCheckState(3,CheckState::Checked);

clb1->SetItemCheckState(5,CheckState::Checked);

clb1->SetItemCheckState(6,CheckState::Checked);

clb1->SetItemCheckState(8,CheckState::Checked);

clb1->SetItemCheckState(9,CheckState::Checked);

clb1->SetItemCheckState(10,CheckState::Checked);

textBox1->Text=L"Бұл аудитория бос емес ";

break;

case 2:

clb1->SetItemCheckState(2,CheckState::Checked);

clb1->SetItemCheckState(3,CheckState::Checked);

clb1->SetItemCheckState(4,CheckState::Checked);

clb1->SetItemCheckState(6,CheckState::Checked);

clb1->SetItemCheckState(8,CheckState::Checked);

clb1->SetItemCheckState(9,CheckState::Checked);

textBox1->Text=L" Turbo C++ -ты орнатуға болады";

break;

case 3:

clb1->SetItemCheckState(5,CheckState::Checked);

clb1->SetItemCheckState(7,CheckState::Checked);

clb1->SetItemCheckState(9,CheckState::Checked);

textBox1->Text=L"Бұл аудиторияда арнаулы пәндер бойынша сабақтар өтеді";

break;

case 4:

clb1->SetItemCheckState(1,CheckState::Checked);

clb1->SetItemCheckState(2,CheckState::Checked);

clb1->SetItemCheckState(8,CheckState::Checked);

clb1->SetItemCheckState(3,CheckState::Checked);

textBox1->Text=L"оқытушылар аудиториясы ";

break;

}

}

};

}

Г қосымшасы

#pragma once

namespace Mylab {

using namespace System;

using namespace System::ComponentModel;

using namespace System:Collections;

using namespace System::Windows::Forms;

using namespace System: :Data;

using namespace System: :Drawing;

//<summary>

// Forml үшін ақпарат

//Назар аударыңыз! Бұл класты өзгертсеңіз барлық кеңейітпесі .resx файлдарымен байланысты //басқарылатын қорларды компиляциялау құралдары үшін ("Resource File Name") қорлар //файлының қасиетін өзгерту қажет.

//</summary>

public ref class Forml : public System "Windows:: Forms:: Form {

public:

Forml (void)

{

InitializeComponent();

//

//TODO: құрастырушы кодын қосыңыз

//

}

protected:

// <summary>

// Барлық қорларды босату.

//</summary>

Forml ()

{

if (components)

{

delete components;

}

}

private: System::Windows::Forms::MenuStripA menuStripl; protected:

private: System::Windows::Forms::ToolStripMenuItemA файлТоо181прМепиКет; private: System::Windows::Forms::ToolStripMenuItemA добавитьТооШйгрМетЛет;

private: System::Windows::Forms::ToolStripMenuItemA добавитьТоо18шрМспиЬет1; private: System::Windows::Forms::ToolStripMenuItemA yGpaTbToolStripMenuItem; private: System::Windows::Forms::ToolStripMenuItemA TeKCTOBOcrio.aeToolStripMenuItem;

private: System::Windows::Forms::ToolStripMenuItemA flo6aBHTbToolStripMenuItem2; private: System:: W indo ws ::Forms::Tool StripMenuItemA у братьТ ool StripMenuItem 1; private: System::Windows::Forms::ToolStripMenuItemA выходТoolStripMenuItem; private: System::Windows::Forms::ButtonA buttonl; private: System::Windows::Forms::TextBoxA textBoxl;

private:

// <summary>

//Құрастырушының айнымалысы қажет.

//</summary>

System: :ComponentModel: :Container Acomponents;

#pragma region Windows Form Designer generated code

// <summary>

// Міндетті түрде болуы тиіс құрастырушыны қолдау үшін қажет

//әдіс – бұл әдістің мазмұнын код редакторы көмегімен

//өзгертпегендерің жөн.

//</summary>

void InitializeComponent(void)

{

this->menuStripl = (gcnew System::Windows::Forms::MenuStrip()); this->(|)aftHToolStripMenuItem = (gcnew System:: Windows: :Forms::ToolStripMenuItem());

this->дo6aвить ToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->добавить ToolStripMenuIteml = (gcnew System:: Windows: :Forms:: T oolStripMenuItem());

this->y6paть ToolStripMenuItem = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->TeKCTOBoerioneToolStripMenuItem = (gcnew System:: Windows: :Forms: :ToolStripMenuItem());

this->flo6aBHTbToolStripMenuItem2 = (gcnew System:: Windows: :Forms: :ToolStripMenuItem());

this->y6paть ToolStripMenuIteml = (gcnew System::Windows::Forms::ToolStripMenuItem());

this->Bbixofl ToolStripMenuItem = (gcnew System:: Windows: :Forms::ToolStripMenuItem());

this->buttonl = (gcnew System::Windows::Forms::Button()); this->textBoxl = (gcnew System::Windows::Forms::TextBox()); this->menuStripl->SuspendLayout(); this->SuspendLayout();

//

// menuStripl

//

this->menuStrip 1 ->Items->AddRange(gcnew cli: :array<

System: Windows: :Forms::ToolStripItemA >(1) {this-^aftnToolStripMenuItem});

this->menuStripl->Location = System::Drawing::Point(0, 0); this->menuStripl->Name = L"menuStripl";

this->menuStripl->Size = System::Drawing::Size(341, 24); this->menuStripl->TabIndex = 0;                                                             *.

this->menuStripl->Text = L"menuStripl";

//

// ((jabnToolStripMenultem

//

this->фaйлToolStripMenuItem->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItemA >(3) {this->flo6aBHTbToolStripMenuItem,

this->TeKCTOBoerione ToolStripMenuItem, this- >выход ТoolStripMenuItem});

this->(j)aftBToolStripMenuItem->Naine = L'^aftB ToolStripMenuItem"; this->фaйл ToolStripMenuItem->Size = System::Drawing::Size(48, 20); this->(jjabn ToolStripMenuItem->Text = Ь"Файл";

//

// j;o6aBHTb ToolStripMenuItem

//

this->flo6aBHTb ToolStripMenuItcm->DropDownItems->AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItemA >(2) (this- >flo6aBHTb ToolStripMenuIteml,

this->y6paть ToolStripMenuItem}); this->;to6aiiHTb ToolStripMenuItem->Name = L'AoGaBHTbl' ТoolStripMenuItem";

this-^o6aBHTb ToolStripMenuItem->Size = System:: Drawing:: Size( 176,

22);

this->/io6aBHTb ToolStripMenuItem->Text = Ь"кнопка на форуме"; this-^o6aBHTb ToolStripMenuItem->Click += gcnew System::EventHandler(this, &Forml:^o6aBHTb ToolStripMenuItem_Click);

//

// добавить ТoolStripMenuItem 1

//

this->flo6aBHTb ToolStripMenuIteml->Name = L"flo6aBHTb ToolStripMenuIteml";

th is->zio6aвить ТoolStri pMenu Item 1 ->Size = System::Drawing::Size(124,

22);

this-AuooaBHTb ToolStripMenuItem 1 ->Text = Ь"добавить"; this->flo6aBHTbToolStripMenuIteml->Click += gcnew System::EventHandler(this, &Forml::flo6aBHTb ToolStripMenuIteml_Click);

//

// y6paть ToolStripMenuItem

//

this->y6paть ToolStripMenuItem->Name = L"y6paTbToolStripMenuItem"; this->y6paTbToolStripMenuItem->Size = System::Drawing::Size(124, 22); this->y6paTbToolStripMenuItem->Text = L"y6paTb"; this->y6paTb ToolStripMenuItem->Click += gcnew System::EventHandler(this, &Forml::y6paть ToolStripMenuItem_Click);

//

// TeKCTOBoeFIoHeToolStripMenuItem

//

this->TeKCTOBoerioj[eToolStripMenuItem->DropDownItems- >AddRange(gcnew cli::array< System::Windows::Forms::ToolStripItemA >(2) {this- Aio6aBHTbToolStripMenuItem2,

this->y6paть ToolStripMenuItem 1}); this->TeKCTOBoe]loneToolStripMenuItem->Name = L"TeKCTOBoeIIoneToolStripMenuItem";

this->TeKCTOBoenoj[eToolStripMenuItem->Size = System::Drawing::Size(176, 22);

this->TeKCTOBoenoae ToolStripMenuItem->Text = Ь"текстовое поле";

//

// flo6aBHTb ToolStripMenuItem2

//

this->добавить ToolStripMenuItem2->Name =

Ь"добавить ТoolStripMenuItem2";

this-добавить ToolStripMenuItem2->Size = System::Drawing::Size(124,

22);

thi з->добавить ТoolStripMenuItem2->Text ="добавить"; this-дo6aвить ToolStripMenuItem2->Click += gcnew System: :EventHandler(this, &Forml::добавитьТоо18МрМепиЕет2_СИск);

//

// y6paть ToolStripMenuIteml

//

this->y6paть ToolStripMenuIteml ->Name =

L"y6paть ToolStripMenuIteml";

this->y6paть ToolStripMenuIteml->Size = System::Drawing::Size( 124, 22); this->y6paть ToolStripMenuIteml->Text = L"y6paTb"; this->y6paть ToolStripMenuIteml->Click += gcnew System: :EventHandler(this, &Form 1: :y6paть ToolStripMenuItem 1 _Click);

//

// BbixoflToolStripMenuItem

//

this->Bbixo;_[ToolStripMenuItem->Name = LMBbixoflToolStripMenuitem"; this->BbD^ToolStripMenuItem->Size = System::Drawing::Size(176, 22); Ш18->выход ТооlStripМепиItеm->Тех1 = "Выход"; 1Ыз->выход Тоо18Е1рМепиЕет->СНск += gcnew System::EventHandler(this, &Forml::выходТоо18Е1рМепиЕет_СНск);

//

// button 1

//

this->buttonl->Location = System::Drawing::Point(13, 45); this->buttonl->Name = L"buttonl"; this->buttonl->Size = System: :Drawing::Size(75, 23); this->buttonl->Tablndex = 1; this->buttonl->Text = Е"подсказка"; this->buttonl->UseVisualStyleBackColor = true; this->buttonl->Click += gcnew System: :EventHandler(this,

&Forml ::buttonl_Click);

//

// textBoxl

//

this->textBoxl->Location = System::Drawing::Point(13, 96); this->textBoxl->Name = L"textBoxl"; this->textBoxl->Size = System::Drawing::Size(271, 20); this->textBoxl->Tab Index = 2;

//

// Forml                                  *

//

this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);

this->AutoScaleMode = System: :Windows::Forms::AutoScaleMode::Font;

this->ClientSize = System: :Drawing::Size(341, 262);

this->Controls->Add(this->textBox 1);

this->Controls->Add(this->buttonl);

this->Controls->Add(this->menuStrip 1);

this->MainMenuStrip = this->menuStripl;

this->Name = L"Forml";

this->Text = L"Forml";

this->menuStrip 1 ->ResumeLayout(false);

this->menuStrip 1 ->PerformLayout();

this->ResumeLayout(false);

this->PerformLayout();

}

#pragma endregion

private: System::Void z;o6aBHTb ToolStripMenuItem_Click(System::ObjectA sender, System::EventArgsA e) {

}

private: System::Void Ao6aBHTb ToolStripMenuIteml_Click(System::ObjectA sender, System: :EventArgsA e) {

buttonl ->Visible=true;

}

private: System::Void y6paTb ToolStripMenuItem_Click(System::ObjectA sender,

System: :EventArgsA e) {

buttonl->Visible=false;

}

private: System::Voidflo6aBHTb ToolStripMenuItem2_Click(System::ObjectA sender,

System: :EventArgsA e) {

textBox 1 ->Visible=true;

}

private: System::Void y6paTb ToolStripMenuIteml_Click(System::ObjectA sender,

System: :EventArgsA e) {

textBox 1 ->Visible=false;

}

private: System::Void выxoд ToolStripMenuItem_Click(System::ObjectA sender,

System: :EventArgsA e) {

System: Environment: :Exit(System: Environment: ExitCode);

}

private: System::Void buttonl_Click(System::ObjectA sender, System::EventArgsA e) {

textBoxl->Text="Элементтер қалыпқа көріну/көрінбеу үшін басыңыз ";

}

};

}

Д қосымшасы

Forml.h                                        

#pragma once                               ^ .

namespace laba4 {

using namespace System; using namespace System: :ComponentModel; using namespace System:‘.Collections; using namespace System::Windows::Forms; using namespace System: :Data; using namespace System: :Drawing; using namespace System::IO; using namespace System::Text;

//<summary>

//Forml үшін ақпарат

//

//Назар аударыңыз! Бұл класты өзгертсеңіз барлық кеңейітпесі .resx файлдарымен байланысты //басқарылатын қорларды компиляциялау құралдары үшін ("Resource File Name") қорлар //файлының қасиетін өзгерту қажет.

// </summary>

public ref class Forml : public System::Windows::Forms::Form

{

public:

Forml (void)

{ >

InitializeComponentQ;

//

//TODO: құрастырушының кодын қос

//

}

protected:

//<summary>

// Барлық қорларды босату.

//</summary>

~Forml()

{

if (components)

{

delete components;

}

}

protected:

private: System::Windows::Forms::OpenFileDialogA openFileDialogl;

private: System::Windows::Forms::SaveFileDialogA saveFileDialogl; private: System::Windows::Forms::ButtonA buttonl; * private: System::Windows::Forms::ButtonA button2; private: System::Windows::Forms::LabelA label 1; private: System::Windows::Forms::ListBoxA listBoxl;

protected:

private:

// <summary>

// Құрастырушының айнымалысы қажет.

//</summary>

char * StrToChar(String A str)

{

cli::pin_ptr<const wchar_t> wch = PtrToStringChars(str); size_t convertedChars = 0; size_t sizelnBytes = ((str->Length + 1) *2); ermo_t err = 0;

char *ch= (char *)malloc(sizeInBytes);

err = wcstombs_s(&convertedChars, ch, sizelnBytes,wch, sizelnBytes); if (err!=0)

MessageBox::Show("wcstombs_s failed!\n"); return(ch);

}

// =:===============:,== =, ==

void LoadFromFile(char *File,ListBox Alb)

(char s[300];

FILE *fp; int i; i=0;

lb->Items->Clear (); if(!(fp=fopen(File,"r")))

{

MessageBox::Show("Файлды ашу қатесі ", "Приложение54",

MessageBoxButtons::OK,MessageBoxIcon: Asterisk);

return;

}

while (!feof(fp))

{

fgets(s,300,fp);

String Add = gcnew String(s);

/*бұл әдіс соңғы басқарушы символды жоймайды:*/

int j=dd->Length-1;

dd=dd->Substring(0,j);

lb->Items-> Add(dd);

i++;

}

}

-&y

#pragma region Windows Form Designer generated code

//<summary>

// Міндетті түрде болуы тиіс құрастырушыны қолдау үшін қажет

//әдіс – бұл әдістің мазмұнын код редакторы көмегімен

//өзгертпегендерің жөн.

// </summary>

void InitializeComponent(void)

{

this->openFileDialogl = (gcnew System::Windows::Forms::OpenFileDialog()); this->saveFileDialogl = (gcnew System::Windows::Forms::SaveFileDialog()); this->buttonl = (gcnew System::Windows::Forms::Button()); this->button2 = (gcnew System::Windows::Forms::Button()); this->listBoxl = (gcnew System::Windows::Forms::ListBox()); this->labell = (gcnew System::Windows::Forms::Label()); this-> SuspendLay out();

//

// openFileDialogl

//

this->openFileDialogl->FileName = L"openFileDialogl"; this->openFileDialogl->Filter = L"Text(*.txt)|*.txt";

//

// button 1

//

this->buttonl->Location = System::Drawing::Point(12, 203); this->buttonl->Name = L"buttonl"; this->buttonl->Size = System::Drawing::Size(75, 23); this->buttonl->TabIndex = 1; this->buttonl->Text = Ь"открыть"; this->buttonl->UseVisualStyleBackColor = true;

this->buttonl->Click += gcnew System: :EventHandler(this, &Forml::buttonl_Click_l);

//

// button2

//

this->button2->Location = System: :Drawing::Point(l24, 203); this->button2->Name = L"button2"; this->button2->Size = System::Drawing::Size(75, 23); this->button2->TabIndex = 2; this->button2->Text = Е"выход"; this->button2->UseVisualStyleBackColor = true;

this->button2->Click += gcnew System::EventHandler(this, &Forml::button2_Click);

//

// listBoxl

//

this->listBoxl->FormattingEnabled = true; this->listBoxl->Location = System::Drawing::Point(5, 24); this->listBoxl->Name = L"listBoxl"; this->listBoxl->Size = System::Drawing::Size(488, 173); this->listBoxl->TabIndex = 3;

//

//label 1

//

this->label 1 -> AutoSize = true;                                   *

this->labell->Location = System::Drawing::Point( 12, 8); this->labell->Name = L"labell"; this->labell->TabIndex = 4; this->labell->Text = L"Мәтінді шығару терезесі ";

//

// Forml

//

this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);

this->AutoScaleMode = System:: Windows: :Forms::AutoScaleMode::Font;

this->ClientSize = System::Drawing::Size(497, 242);

this->Controls->Add(this->labell);

this->Controls-> Add(this->listBox 1);

this->Controls->Add(this->button2);

this->Controls-> Add(this->button 1);

this->Name = L"Forml";

this->Text = L"Forml";

this->Load += gcnew System::EventHandler(this, &Forml::Forml_Load);

this->ResumeLayout(false);

thi s->PerformLayout();

}

#pragma endregion

private: System::Void Forml_Load(System::ObjectA sender, System::EventArgsA e) {

}

private: System::Void buttonl_Click_l(System::ObjectA sender, System:EventArgsA e) { StreamA s;

this->DialogResult= System:: Windows: :Forms: :DialogResult:: OK; if (this->openFileDialogl->ShowDialog()=:= System::Windows::Forms::DialogResult::OK) {

if ((s= this->openFileDialogl->OpenFile()) != nullptr)

{

String Aa=this->openFileDialogl->FileName; char *ss=StrToChar (a);

LoadFromFile(ss, this->listBox 1);

}

else

MessageBox::Show("Файлды қосудағы қате");

}

}

private: System::Void button2_Click(System::ObjectA sender, System::EventArgsA e) { this->Close ();

}

};

}

2)       CPP

#include "stdafx.h"

#include <io.h>

#include <stdio.h> #include <fcntl.h>

#include <share.h>                                                     *,

#include <stdlib.h>

#include <vcclr.h>

#include "Forml.h"

using namespace laba4;

[ ST AThread Attribute]

int main(array<System:: String A> Aargs)

{

// Басқару элементтерін құру үшін Windows XP-дың визуалды компонеттерін қосу

Application: :EnableVisualStyles();

Application:: SetCompatibleT extRenderingDefault(false);

// Бас терезені құру және іске қосу Application: :Run(gcnew Forml ()); return 0;

}

Әдебиеттер тізімі

1.Гамма Э., Хелм Р., Джонсон Р., Влиссидес Д. Приемы объектно-ориентированного проектирования Паттерны проектирования - СПб.: Питер, 2013.-368с.

2. Госсе М., Келлер Б., Кришнамурти А., Вузворт М. Управление жизненным циклом приложений «Visual Studio 2010» профессиональный поход.- М.: ЭКОМ, 2012.- 896 с.

3. Макконнелл С. Совершенный код.- Русская редакция, 2012.-896 с.

4. Керниган Б., Ритчи Д. Язык программирования Си . Пер. с англ., 3-е изд., испр. - СПб.:        Невский Диалект, 2001. - 352 с.

5. Павловская Т.А. C/C++. Программирование на языке высокого уровня: учебник для студентов вузов. - СПб.: Питер, 2005.-461 с.

6. Культин Н. Б. C/C++ в задачах и примерах. - СПб.: БХВ- Петербург, 2005. - 430 с.

7. Подбельский В.В. Язык СИ++: учебное пособие. -М.: Финансы

и статистика, 2003. - 560 с.

2014 ж. жоспары, реті 103

Клара Тагаевна Сауанова
Омарова Гульнара Абуталиновна

ВИЗУАЛДЫ ПРОГРАММАЛАУ
5В070200- Автоматтандыру және басқару мамандығының студенттері үшін
зертханалық жұмыстарды орындауға арналған әдістемелік нұсқаулықтар

Редакторы Қ.С.Телғожаева
Стандарттау бойынша маман Н.К.Молдабекова

__  __   __басуға қол қойылды
Пішімі 60*84 1/16
Таралымы    75   дана
№1 типографиялық қағаз

Көлемі 3,3 оқу- бас.ә.
Тапсырыс      Бағасы 1650  тг

«Алматы энергетика және байланыс университеті»
коммерциялық емес акционерлік қоғамының
көшірмелі-көбейткіш бюросы
050013,Алматы, Байтұрсынұлы көшесі, 126