Аппараттық және бағдарламалық қамтамасыз етуді орнату

Графикалық интерфейсі бар c тіліндегі қолданба. Пішіндерді қолдану арқылы қолданбаларды әзірлеу әдістемесі

Барлығына сәлем. Алдыңғы сабақтарымда мен Borland C++ Builder ортасында консольдік қосымшаларды жасау туралы айтқан болатынмын. Осы сабақтан бастап біз мысал ретінде графикалық қолданбаларды пайдаланып C++ тілін үйренеміз. Кім консоль жасауды үйренгісі келеді. «С++ тілінде консольдық қосымшаларды құру өнері» кітабын оқи алады. Біздің бірінші қолданбамыз көрсетілетін бағдарлама болады кездейсоқ сан. Біз borlandyayu ашамыз, тек консоль қосымшасын жасамаңыз. Іске қосылғаннан кейін экранда келесі пішін пайда болады:

Жоғарғы жағында құралдар тақтасы болады:

Оң жақта объект инспекторы және пішін тізімі:

Құрамдас бөліктер (BASIC-тен айырмашылығы) қойындыларға бөлінген. Аты бойынша, қойындыға қандай құрамдас бөліктер орналастырылғанын болжау қиын емес. Стандартты қойындыны ашыңыз және компоненттерді мен сияқты пішінге орналастырыңыз:

Түйме Button1 деп белгіленеді. Оны өзгерту керек. Borland төменгі сол жақ терезесінде компоненттердің қасиеттері көрсетілген, олар біздікіне өзгертілуі керек:

Түймедегі Тақырып (Жазба) Жасауға өзгеріңіз

Label1 белгісі үшін Caption сипатын Санға өзгертіңіз

Edit1-де Text қасиеті (өңдеудегі мәтіннің өзі) жай ғана өшіріледі.

Осы манипуляциялардан кейін пішін менікі сияқты болады:

Біз визуалды стильді аяқтадық, айтпақшы, Борлядтағы қасиеттердің көпшілігі BASIC немесе Delphi сияқты көрінеді. Олармен тәжірибе жасаңыз.

Енді оқиғаларға тоқталайық. Әрбір компонентте оқиғалар бар, оларда белгілі бір шарттарға жеткенде орындалатын код бар. Мысалы, түйме үшін Click оқиғасындағы код біз оны басқан кезде орындалады және т.б.

Бүгін біз тек Click оқиғасын қолданамыз. Түймені екі рет басып, код терезесіне кіріңіз:

Автоматты түрде жасалған оқиғаны басыңызтүйме үшін. Код консоль қолданбасы сияқты арасына орналастырылады бұйра жақшалар. Біз кодты жазамыз:

Жарамсыз __fastcall TForm1::Button1Click(TObject *Sender) ( double aaa; //Процессор жасаған санды осында қойыңыз Жол саны; //Бірдей санды жазыңыз, бірақ жолды рандомизациялау үшін азайтыңыз; //Бұл қажет сандар қайталанбайды aaa=кездейсоқ (34)*43646; //Кез келген санды жасаңыз count=FloatToStr (aaa); //FloatToString функциясын пайдаланып санды жолға аударыңыз Edit1->Text=count; //Жолдың айнымалы мәнін шығарыңыз мәтіндік терезеде)

Алгоритм қарапайым, біз оған сақтау үшін айнымалыны жариялаймыз бөлшек сан, және жол пішініндегі санға арналған айнымалы. Мәселе мынада, бірден жасалған санды мәтіндік өрісте көрсету мүмкін емес (қате болады. Мәтін күтілді және сан алынды), сондықтан FloatToStr функциясының көмегімен біз санды жолға аударамыз және оны жолға шығарамыз. мәтін ұясы. Шығару үшін біз (> белгісін қолданып (vb-дегі нүктеге ұқсас)) Edit1 text қасиетіне бұрылып, мәтінді сол жерде бейнелейміз. Әзірге бәрі осы.

Айтпақшы, қайта толтыратын сұрақ: кім тез өседі компьютерлік вирустар, қытайлық па, әлде қояндар ма?


Пікірлер()

Витай

артёмка

"randomize; //Бұл сандар қайталанбауы үшін қажет." Мен әлі де қайталаймын. не істеу?

Андрей

2 опция бар 1- "randomize();" немесе 6-жолда функцияны қиындатады, мысалы: көбірек секунд қосыңыз

Андрей

«секундтар» немесе екі псевдокездейсоқ сандарды қосу нәтижесі секундтарға бөлінген - факторлар неғұрлым көп болса, сан соғұрлым болжанбайды.

артёмка Алексей (алекс13ш)

рандомизациялау
бұл бағдарлама қосылған кезде сандар қайталанбауы үшін
жақсы, яғни. бағдарламаны қоссаңыз, түймені бірнеше рет басыңыз
1)5
2)47
3)86
бұл бүтін сандардағы менмін
жақсы, егер сіз бағдарламаны өшіріп, оны қайта қоссаңыз, түймені тізбектей басқан кезде, бірдей реттілікпен бірдей сандар болады.
бұл рандомизациясыз, бірақ бұл жойылмайды

Және бұл жолмен не қайталанады
1)3
2)69
3)1
4)3
5)8
6)1
БҰЛ рандомизацияға ҚОЛДАНЫЛМАЙДЫ
Бұған жол бермеу үшін Андрей жауап берді))

Бегзод

Менің компьютерімде Visual c++.net бар. Мен оған оқулықтарды, бастапқы кодтарды таба алмаймын. Көмектесіңіздер.

Али05

Мен кітап дүкенінен Visual C ++ .Net «Nikita Kultin Programming Basics in Microsoft Visual C ++ 2010» оқулығын көрдім, ол Windows (WinForms) астында графикалық қосымшаларды құру жолын ғана көрсетеді.

Кольхакер Nintendo

Қызық, оның «жамандығы» неде?

Кольхакер

Материалды дұрыс жеткізу және сізді, мырзалар, нашар бағдарламалау стиліне дағдыландыру мүмкіндігі болмаған жағдайда, айнымалы/функция атаулары транслитерацияланады.

Эдвард Кольхакер

Ресей Федерациясының Білім және ғылым министрлігі

Федералдық мемлекеттік бюджеттік білім беру мекемесі

жоғары кәсіби білім

«УФА МЕМЛЕКЕТТІК МҰНАЙЫ

ТЕХНИКАЛЫҚ УНИВЕРСИТЕТ»

Информатика және инженерлік кибернетика кафедрасы

Қолданба жасау c GUI microsoft visual studio 2010 ортасындағы пайдаланушы

Оқу құралы

зертханалық және практикалық сабақтарға арналған

бағытының студенттерімен

230100 (09.03.01) «Информатика және есептеуіш техника»

Оқу-әдістемелік құралда теориялық мәліметтер, «Бағдарламалау» курсының практикалық және зертханалық жұмыстарына арналған тапсырмалар берілген.

Әдістемелік құрал 230100 «Информатика және есептеуіш техника» бағыты бойынша пән оқытушыларына, сонымен қатар студенттерге арналған.

Құрастырған: Ғабдуллина А.А., Өнер. кафедрасының оқытушысы VTIK

Дружинская Е.В., Арт. кафедрасының оқытушысы VTIK

Рецензент: Филиппов В.Н., м.ғ.к., кафедра доценті. VTIK.

1. Теориялық ақпарат 4

1.1. Негізгі ұғымдар 4

1.2. -мен танысу Windows қолданбасы Microsoft Visual Studio 2010 бағдарламасындағы пішін 4

1.3. 7 нысанды бақылау

1.5. MessageBox 9 функциясы

1.6. TextBox басқару элементі 10

2.Практикалық тапсырма. Microsoft Visual Studio 2010 бағдарламасындағы Windows Form қолданбасына кіріспе 12

2.1. Аяқталған жұмысты бағалау құрылымы 12

2.2. Практикалық жұмысты орындау тәртібі 12

3. Зертханалық жұмыс. Microsoft Visual Studio 2010 бағдарламасында қолданбаларды әзірлеу 16

3.1. Зертханалық тапсырыс 16

3.2. Тапсырма 1. Функцияны кестелеу және берілген 16-қадаммен көрсетілген интервалдағы оның мәндерін есептеу

3.3. Жеке тапсырмалар 19

3.4. Тапсырма 2. Екі өлшемді массивтерді өңдеу 21

3.5. Жеке тапсырмалар 27

  1. Теориялық ақпарат

  1. 1.1. Негізгі ұғымдар

Қазіргі уақытта ақпараттық процестерді автоматтандыру, ең алдымен, деректер ағынын басқаратын графикалық пайдаланушы интерфейсі (GUI) бар бағдарламалық қосымшаны әзірлеу арқылы ұсынылған.

Графикалық пайдаланушы интерфейсі (GUI) - бұл пайдаланушыға графикалық экран компоненттері (терезелер, түймелер, айналдыру жолақтары және т. .

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

Стандартты графикалық пайдаланушы интерфейсі бірқатар талаптарға сай болуы керек:

Пайдаланушының бағдарламалық өніммен жұмысының ақпараттық технологиясын сақтау;

Сыртқы әрекеттесу деңгейінде бағдарламамен байланысатын соңғы пайдаланушыға назар аудару;

Әрқайсысы 6 опциядан аспайтын бір мәзір жолағында 6-дан көп емес ұғымды қамтитын «алтылық» принципін қанағаттандыру;

    графикалық объектілердің стандартталған мақсатын және мүмкіндігінше олардың экранда орналасуын қамтамасыз ету.

Объектіге бағытталған бағдарламалауда біз класстармен және объектілермен айналысамыз. Нысандар құрамдас деректер түрлері болып табылады: олар бірнеше мәндерді бір бірлікке біріктіреді және сол мәндерді аты бойынша жазуға және сақтауға мүмкіндік береді. Басқаша айтқанда, нысан — әрқайсысының аты мен мәні бар сипаттардың ретсіз жиыны. Нысандағы аталған мәндер сандар немесе жолдар сияқты қарабайыр түрлер немесе басқа нысандар болуы мүмкін.

Консольдік емес қосымшаларды әзірлеу кезінде негізгі түсінік Форма болып табылады.

Пішін – дизайн ортасының басқару элементтерін орналастыруға арналған контейнер.

Қасиеттер - осы элементте сақталған ақпаратқа қол жеткізу мүмкіндігі.

Әдістер - бұл объект орындай алатын әрекеттер жиынтығы.

Оқиға - бұл объектпен танылған әрекет (мысалы, тінтуірді басу, пернені басу), ол үшін жауапты бағдарламалауға болады, яғни. объектінің оқиғаға реакциясы.

Бұл мақалада біз C++ тілінде пішіндерді пайдаланып қарапайым қолданбаларды құру туралы айтатын боламыз. Мен бірден түсіндіргім келеді: «форма» C++ қосымшаларын әзірлеу Microsoft Visual Studio ортасында жүзеге асырылады (біз Borland Software компаниясының негізгі бәсекелесін айналып өтеміз). Айта кету керек, Visual Studio-да пішіндермен қосымшаны жасаудың екі жолы бар, шешім жаңа жобаны құру кезінде қабылданады.

Олардың біріншісі графикалық пайдаланушы интерфейсін жүзеге асыратын және Microsoft.NET Framework бөлігі болып табылатын Windows Forms бағдарламасын пайдалану болып табылады. Бұл тәсіл интерфейс элементтеріне қол жеткізуді жеңілдетеді. Microsoft Windows Win32 API басқарылатын кодқа орау арқылы. Егер сіз өз ойларыңызды неғұрлым түсінікті пішінге келтірсеңіз, онда бұл тәсіл консольдік қосымшаны құруға өте ұқсас, бірақ сәл күрделірек. пішіндерді пайдаланады.

Екінші әдіс негізделген Microsoft көмегімен Foundation Classes (MFC), қолданбалы жүйені құруға қамқорлық жасайтын кітапхана. Біріншіден айырмашылығы, MFC қораптан тыс MVC (Model-View-Cont ролик) үлгісін пайдаланады. Бұл тәсіл біріншіге қарағанда күрделірек, бірақ оған сүйене отырып, сіз өте оңай құрылымды жасай аласыз. қызықты қолданбалар, Мәселен, мәтіндік редакторнемесе Ribbon компонентін пайдаланып, атышулы MS Office 2010 бағдарламасындағыдай мәзір жасаңыз.

MS Visual Studio бағдарламасында қосымша құру

Жаңа қосымшаны құрайық: File->New->Project. Пайда болған терезеде, жоғарыдағы суреттегідей, Windows Forms Application тармағын тауып, таңдаңыз, содан кейін жаңа жобаның атын (app1) және орнын көрсетіңіз және «OK» түймесін басу арқылы оны құруды растаңыз.

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

  • Белсендірілген - элемент белсендірілген кезде пайда болатын оқиға.
  • Click - элементті бір рет басқанда пайда болады.
  • DoubleClick – элементті екі рет шертіңіз.
  • HelpRequested – пернені басқан кезде іске қосылады .
  • Paint – элемент қайта сызылған кезде іске қосылады.
  • MouseLeave - Оқиға курсор элемент шекарасынан шыққан кезде іске қосылады.

Элементке тән оқиғалар оның түріне байланысты екенін ұмытпаңыз. Пішін нысаны үшін қол жетімді барлық оқиғаларды көру үшін оны таңдап, сипаттар терезесінде найзағай белгішесін таңдаңыз. Төменде elementForm1 үшін оқиғалардың бөлігі берілген. Көріп отырғаныңыздай, Form1_Load функциясы Жүктеу оқиғасы үшін таңдалған, сондықтан осы функциядағы код пішін жүктелген кезде шақырылады.

Form1.h файлын ашыңыз, келесі код болады:

Жеке: Жүйе::Void Form1_Load(Жүйе::Объект^ жіберуші, Жүйе::EventArgs^ e)( )

Бұл пішін жүктелген кезде іске қосылатын бірдей Form1_Load функциясы. Мұны пішінге TextBox компонентін қосу арқылы тексерейік.

Ол үшін пішін ресурсын ашып, оны таңдаңыз. Содан кейін Құралдар жинағы құралдар тақтасын таңдап, TextBox компонентін пішінге сүйреңіз. Form1_Load функциясын келесідей өзгертіңіз:

Private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) ( textBox1->Text = "Hello, World!"; //textBox1 - сіз қосқан мәтіндік өрістің атауы)

Жобаны іске қосыңыз, нәтижесінде келесі хабарлама пайда болуы керек:

Әзірше осымен, келесі сабақтарда жалғасын тапты.

Соңғы жаңарту: 26.05.2019

Xamarin.Forms ішінде көрнекі интерфейс беттерден тұрады. Бет Page сыныбының объектісі болып табылады, ол бүкіл экран кеңістігін алады. Бұл экранда біз көріп отырған нәрсе мобильді құрылғыбет болып табылады. Қолданбада бір немесе бірнеше бет болуы мүмкін.

Бет мазмұн ретінде орналасу контейнерлерінің бірін қабылдайды, ол өз кезегінде түймелер мен мәтін өрістері сияқты стандартты көрнекі элементтерді, сондай-ақ басқа орналасу элементтерін қамтиды.

Алдыңғы тақырыпта жасалған HelloApp жобасын алайық (немесе жаңасын жасаңыз). Әдепкі бойынша, бүкіл интерфейс App.xaml.cs файлында орналасқан және ағымдағы қолданбаны көрсететін Қолданба сыныбында жасалады:

Оның әдепкі коды:

Жүйені пайдалану; Xamarin.Forms пайдалану; Xamarin.Forms.Xaml пайдалану; аттар кеңістігі HelloApp ( жалпыға ортақ жартылай сынып Қолданба: Қолданба ( public App() ( InitializeComponent(); MainPage = new MainPage(); ) қорғалған қайта анықтау void OnStart() ( // Қолданба іске қосылғанда өңдеу ) қорғалған қайта анықтау void OnSleep() ( / / Қолданбаңыз ұйықтап жатқанда өңдеу ) қорғалған қайта анықтау void OnResume() ( // Қолданбаңыз қайта қосылғанда өңдеу ) ) )

Қолданба сыныбы конструктордан басталады, мұнда алдымен InitializeComponent() әдісі шақырылады, ол нысанды инициализациялайды, содан кейін MainPage сипаты орнатылады. Осы сипат арқылы Қолданба сыныбы орнатылады басты бетқолданбалар. Бұл жағдайда ол MainPage.xaml және MainPage.xaml.cs файлдарында анықталған сынып болып табылатын HelloApp.MainPage сыныбы арқылы анықталады.

Бірақ жол берілдіжалғыз емес. Xamarin.Forms визуалды интерфейсті C# кодын пайдалана отырып немесе html-ге ұқсас xaml тілін немесе осы тәсілдердің тіркесімін пайдалана отырып, декларативті түрде жасауға мүмкіндік береді.

C# кодынан интерфейс құру

HelloApp жобасына біз StartPage деп аталатын кәдімгі C# сыныбын қосамыз.

Және осы сыныпта келесі мазмұнды анықтаңыз:

Xamarin.Forms пайдалану; аттар кеңістігі HelloApp ( StartPage класы: ContentPage ( жалпыға ортақ StartPage() ( Белгі тақырыбы = жаңа Label() ( Мәтін = "Xamarin Forms-тен сәлем" ); this.Content = тақырып; ) ) )

Бұл класс бетті білдіреді, сондықтан ол ContentPage сыныбынан мұраланады. Конструктор беттің мазмұны ретінде орнатылған мәтіні бар белгіні жасайды (this.Content = тақырып).

Негізгі бетті белгілеу үшін бастапқы бет, қолданба сыныбын өзгертіңіз:

Xamarin.Forms пайдалану; аттар кеңістігі HelloApp ( жалпыға ортақ жартылай класс Қолданба: Қолданба ( public App() ( InitializeComponent(); MainPage = new StartPage(); ) қорғалған қайта анықтау void OnStart() ( // Қолданба іске қосылғанда өңдеу ) қорғалған қайта анықтау жарамсыз OnSleep() ( / / Қолданбаңыз ұйықтап жатқанда өңдеу ) қорғалған қайта анықтау void OnResume() ( // Қолданбаңыз қайта қосылғанда өңдеу ) ) )

MainPage сипаты енді жаңадан жасалған StartPage бетіне нұсқайды.

Сондай-ақ, Visual Studio-да бар екенін атап өткен жөн дайын үлгіқарапайым кодпен жаңа бет сыныптарын қосу үшін. Сонымен, жаңа бет қосу үшін жаңа элементті қосқанда Мазмұн беті (C#) үлгісін таңдау керек:

Бұл сынып қосылды негізгі жобашешімдер (бұл жағдайда HelloApp).

Қосылған бет сыныбында келесі код болады:

Жүйені пайдалану; System.Collections.Generic пайдалану; System.Linq арқылы; System.Reflection.Emit көмегімен; System.Text көмегімен; Xamarin.Forms пайдалану; аттар кеңістігі HelloApp ( жалпы сынып Page1: ContentPage ( жалпыға қолжетімді Page1() ( Мазмұн = жаңа StackLayout ( Балалар = ( жаңа белгі ( Мәтін = "Сәлеметсіз бе" ) ) ); ) ) )

Бұл сынып сонымен қатар негізгі ContentPage сыныбынан мұра болады және жоғарыда жасалған MainPage сыныбымен бірдей дерлік ұйымға ие болады.

Сондай-ақ қолданбалар сыныбында біз бұл бетті бастапқы бет ретінде орнатуға болады:

Xamarin.Forms пайдалану; аттар кеңістігі HelloApp (жалпыға ортақ жартылай сынып Қолданбасы: Қолданба (жалпы қолданба() ( InitializeComponent(); MainPage = new Page1(); ) //........... ) )

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
рахмет. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!