Wykład 10 Programowanie w Windows 1.Aplikacja dialogowa (Dialog Based) PO10-1 / 26.

Slides:



Advertisements
Podobne prezentacje
Programowanie Windows
Advertisements

Ćwiczenie (1) Dostosuj poniższy program do potrzeb zdefiniowanych w treści programu zaliczeniowego: #include void dodaj(){}; void edytuj(){}; void usun(){};
Programowanie obiektowe
1 Dzisiejszy wykład Wzorce funkcji Wzorce klas. 2 Wzorce Często pojawia się konieczność pisania podobnych funkcji lub klas operujących na argumentach.
1 Dzisiejszy wykład Wzorce funkcji Wzorce klas Tablica asocjacyjna Składowe statyczne.
PSZ wykład 2 > Przegląd komponentów biblioteki VCL
Programowanie w języku C++. Jak napisać prosty program obliczeniowy lub grę komputerową? Zbigniew Nagórny Pracownia Komputerowa Wyższa Szkoła Humanistyczno-Przyrodnicza.
Języki programowania C++
20/09/ Języki programowania 1 Piotr Górczyński Kreator form.
18/11/ Języki programowania 1 Piotr Górczyński Łączenie z bazą danych.
.NET - możliwości Jarosław Balcer & Jan Góralski.
Standard Template Library
Instrukcje Instrukcja : definicja obliczenia i określenie sposobu wykonania tego obliczenia. Program : ciąg instrukcji wykonywanych kolejno od pierwszej.
Project made by Bartosz Rumiński Kl. III i rok 2007/2008.
Wyższa Szkoła Ekologii i Zarządzania
SKRÓTY KLAWISZOWE MYMEK I TOMIX.
Visual C++ Zastosowania Informatyki Wykład 6 Copyright, 2003 © Adam Czajka.
C# Windows Forms Zastosowania Informatyki Wykład 3
C# Windows Forms Zastosowania Informatyki Wykład 4, 5
C# Windows Forms Zastosowania Informatyki Wykład 2
Podstawy C# Grupa .NET PO.
Programowanie w Środowisku Windows
Instrukcje sterujące część 1
Podstawy programowania
Programowanie urządzeń mobilnych – wykład IV
LabVIEW Technologie informacyjne – laboratorium Irmina Kwiatkowska
Podstawy programowania. Język C i C++– podstawy Temat: 1
Programowanie w Środowisku Windows
Tadeusz Ziębakowski Zachodniopomorski Uniwersytet Technologiczny.
Podstawy programowania II
Programowanie Windows na przykładzie C# część 1
Jerzy F. Kotowski1 Informatyka I Wykład 14 DEKLARATORY.
Jerzy F. Kotowski1 Informatyka I Wykład 15 PIERWSZE KROKI.
JAVA c.d.. Instrukcji wyboru SWITCH używamy, jeśli chcemy w zależności od wartości pewnego wyrażenia wykonać jeden z kilku fragmentów kodu. Jest to w.
Robimy własne notatki - Notatnik
PROGRAMOWANIE KOMPUTERÓW
Przekazywanie parametrów do funkcji oraz zmienne globalne i lokalne
Okienkowy system operacyjny
Zajęcia I Organizacja zajęć Rejestracja i uruchamianie makr
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5 Programowanie komponentowe 1.
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Systemy operacyjne Wykład 3a Działanie aplikacji okienkowej dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki
Visual Basic w Excelu - podstawy
Oprogramowanie komponentowe w środowisku Microsoft Katarzyna Kuźniar 4 FDA, C1.
Technologie internetowe Wykład 7 Kontrola danych użytkownika.
Projektowanie Aplikacji Internetowych Artur Niewiarowski Wydział Fizyki, Matematyki i Informatyki Politechnika Krakowska.
Technologie internetowe Wykład 5 Wprowadzenie do skrytpów serwerowych.
Tworzenie graficznego interfejsu użytkownika (GUI)
1 Analiza możliwości języka C# w aspekcie oprogramowania dla myszy Łukasz Łysyganicz Nr indeksu Praca napisana pod kierunkiem: Prof. nzw. Dr hab.
VISUAL BASIC FOR APLICATION (VBA)
Waldemar Bartyna 1 Programowanie zaawansowane LINQ to XML.
Komunikaty Windows Jacek Matulewski 22 września 2012 Programowanie Windows
Wykład 9 Programowanie w Windows 1.Programowanie zdarzeniowe 2.Zdarzenia obsługiwane przez Windows 3.Aplikacja obsługująca klawisz myszki 4.AppWizard PO9-1.
Wykład 11 Aplikacje SDI PO11-1 / 22 Single Document Interface 1.Klasy aplikacji SDI 2.Menu systemowe aplikacji SDI 3.Serializacja 4.Tworzenie widoku 5.Tworzenie.
Seminarium Dyplomowe: Metodyka i Techniki Programowania Autor: Bartłomiej Fornal.
Portal edukacyjny J A V A S C R I P T JĘZYK PROGRAMOWANIA STRON HTML Opracowała: Anna Śmigielska.
Wstęp do programowania Wykład 2 Dane, instrukcje, program.
Interfejs użytkownika „No matter how cool your interface is, less of it would be better”
Programowanie I Rekurencja.
 Podstawowy składnik.NET Framework  Technologia tworzenia w pełni dynamicznych stron internetowych działających po stronie serwera  Zorientowanie na.
Edytor tekstu Word – możliwości graficzne
Programowanie Obiektowe – Wykład 6
Programowanie Obiektowe – Wykład 9
T. 18. E Proces DGA - Działania (operatorka).
Schemat przykładowej lekcji, podczas której uczniowie samodzielnie wykonali program – „horoskop”. Nauczyciel: Anna Noworzyn.
Visual Basic for Applications
Wstęp - Prosta aplikacja internetowa w technologii Java EE 5
Aplikacje i usługi internetowe
PGO Przeciążanie metod i konstruktorów
Tworzenie graficznego interfejsu użytkownika (GUI)
Zapis prezentacji:

Wykład 10 Programowanie w Windows 1.Aplikacja dialogowa (Dialog Based) PO10-1 / 26

Aplikacja dialogowa 1.Propozycja aplikacji 2.Projektowanie interfejsu 3.Pokazanie okna „About” 4.Zmienne dla kontrolek 5.Obsługa przycisków PO10-2 / 26

Propozycja aplikacji PO10-3 / 26

Projekt interfejsu PO10-4 / 26

Projekt interfejsu PO10-5 / 26

Interface PO10-6 / 26

Obsługa przycisku „About” 1.Wybierając „Add Event Handler...” w kontekstowym menu przycisku „O Programie” otwieramy okno „Event Handler Wizard”. 2.Do obiektu IDC_BUTTON4 dodajemy funkcję obsługi komunikatu BN_CLICKED. 3.Akceptujemy nazwę funkcji „OnBnClickedButton4”. 4.Edytujemy funkcję wpisując do niej kod w języku C++. PO10-7 / 26

Programowanie obsługi „About” PO10-8 / 26

Działanie programu PO10-9 / 26

Zmienne kontrolek PO9-10 / 26 int CButton CString, int, UINT, long, DWORD, float,double, BYTE, short, BOOL, COleDateTime, COleCirrency BOOL CStatic CString int CSpinPuttonCtrl int CProgressCtrl

Zmienne kontrolek PO9-11 / 26 CHotKeyCtrl CListCtrl CTabCtrl CTreeCtrl CAnimateCtrl Ctime, COleDateTime CIPAddressCtrl Cstring, int CString, int, UINT, long, DWORD, float,double, BYTE, short, BOOL, COleDateTime, COleCirrency CButton CNetAddressCtrl CSplitButton CLinkCtrl

MFC ClassWizard PO10-12 / 26

Obsługa zdarzeń 1.Przenieś dane z kontrolek do ich zmiennych. 2.Wykonaj zadane działania (m_Wynik=m_X+m_Y, m_Wynik=m_X/m_Y lub m_X=m_Wynik) 3.Przenieś dane ze zmiennych do ich kontrolek. Obsługa przycisków „Dodaj”, „Podziel” i „Wynik -> X” jest bardzo podobna. Do klasy okna dialogowego „CDzialaniaDlg” dodamy funkcję „Oblicz(int)” realizującą algorytm: PO10-13 / 26

Dopisanie funkcji PO10-14 / 26

Obsługa przycisków PO10-15 / 26

Program PO10-16 / 26

Dezaktywacja klawisza PO10-17 / 26

Inicjacja dialogu PO10-18 / 26

Aplikacja PO10-19 / 26

Przykład 2 PO10-20 / 26

Grupa przycisków PO10-21 / 26

Inicjacja PO10-22 / 26

Tekst przycisku PO10-23 / 26 void CGrupaDlg::OnRadio1( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Dodaj")); } void CGrupaDlg::OnRadio2( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Odejmij")); } void CGrupaDlg::OnRadio3( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Pomnóż")); } void CGrupaDlg::OnRadio4( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Podziel")); }

Obliczenia PO10-24 / 26 void CGrupaDlg::OnButton2( ) { UpdateData( ); switch(m_zadanie){ case 0: wynik = m_X + m_Y; break; case 1: wynik = m_X – m_Y; break; case 2: wynik = m_X * m_Y; break; case 3: wynik = m_Y ? m_X / m_Y : 0; break; } m_Txt.Format(_T("%.*f"), m_prec, wynik); CEdit* pEdit=(CEdit*)GetDlgItem(IDC_EDIT3); pEdit -> SetWindowText(m_Txt); }

Zerowy dzielnik PO10-25 / 26 void CGrupaDlg::OnRadio1( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Dodaj")); (GetDlgItem(IDC_BUTTON2))->EnableWindow(TRUE); }... void CGrupaDlg::OnRadio3( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Pomnóż")); (GetDlgItem(IDC_BUTTON2))->EnableWindow(TRUE); } void CGrupaDlg::OnRadio4( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Podziel")); UpdateData( ); if(m_Y==0) (GetDlgItem(IDC_BUTTON2))->EnableWindow(FALSE); } void CGrupaDlg::OnRadio4( ) { ((CEdit*)GetDlgItem(IDC_BUTTON2))->SetWindowText(_T("Podziel")); UpdateData( ); if(m_Y==0) (GetDlgItem(IDC_BUTTON2))->EnableWindow(FALSE); } void CGrupaDlg::OnEnChangeEdit2( ) { if(m_zadanie!=3) return; CString S; (GetDlgItem(IDC_EDIT2))->GetWindowText(S); double x=_wtof(S); (GetDlgItem(IDC_BUTTON2))->EnableWindow(x!=0); }

Symulacja PO10-26 / 26