Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-17 12:54:48 case 12: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S3: " << endl; samo3.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); getch(); } int znak; if( znak == 8 ) { clrscr(); Menu( licznik ); }
Dobrze? :: Poprawiany przez - Pietrzuch ::Używaj Tagów! - http://forum.ddt.pl/?Tid=622 |
|
malan |
» 2009-05-17 13:03:35 //Edit Dobrze? Sprawdzałeś czy działa? getch(); } int znak; if( znak == 8 ) { clrscr(); Menu( licznik ); }
Wniosek? if się do tego nie nadaje. Pamiętaj o tym: Musisz zadeklarować sobie zmienną, która będzie równa getch(). |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-17 13:16:04 #include <conio.h> #include <string> #include <iostream> #include "console.ddt"
using namespace std; using namespace ddt::console;
void Menu( int licznik ) { clrscr(); gotoxy( 30, 10 ); textcolor( 10 ); cout << "1 - Samochod S1" << endl; gotoxy( 30, 11 ); textcolor( 11 ); cout << "2 - Samochod S2" << endl; gotoxy( 30, 12 ); textcolor( 12 ); cout << "3 - Samochod S3" << endl; gotoxy( 30, 13 ); textcolor( 13 ); cout << "4 - Samochod S4" << endl; gotoxy( 30, 14 ); textcolor( 14 ); cout << "5 - Samochod S5" << endl; gotoxy( 30, 15 ); textcolor( 15 ); cout << "6 - Wyjscie" << endl; gotoxy( 30, 20 ); textcolor( 10 ); cout << "Esc - Koniec" << endl; gotoxy( 30, 21 ); textcolor( 11 ); cout << "Enter - Wybieranie" << endl; gotoxy( 30, 22 ); textcolor( 12 ); cout << "Backspace-Powrot do Menu" << endl; gotoxy( 25, licznik ); textcolor( 999 ); cout << "->" << endl; }
class Samochod { protected: string kolor; string marka; float rocznik; float masa; float iloscdrzwi; float pojemnosc; float wysokosc; public: void wczytaj() { gotoxy( 25, 8 ); textcolor( 15 ); cout << "Podaj marke samochodu:"; cin >> marka; gotoxy( 25, 9 ); textcolor( 15 ); cout << "Podaj rocznik:"; cin >> rocznik; gotoxy( 25, 10 ); textcolor( 15 ); cout << "Podaj pojemnosc silnika:"; cin >> pojemnosc; gotoxy( 25, 11 ); textcolor( 15 ); cout << "Podaj mase samochodu:"; cin >> masa; gotoxy( 25, 12 ); textcolor( 15 ); cout << "Podaj kolor samochodu:"; cin >> kolor; gotoxy( 25, 13 ); textcolor( 15 ); cout << "Podaj ilosc drzwi:"; cin >> iloscdrzwi; gotoxy( 25, 14 ); textcolor( 15 ); cout << "Podaj wysokosc samochodu:"; cin >> wysokosc; } void wyswietl() { gotoxy( 25, 8 ); textcolor( 15 ); cout << "Marka samochodu:" << marka << endl; gotoxy( 25, 9 ); textcolor( 15 ); cout << "Rocznik samochodu:" << rocznik << endl; gotoxy( 25, 10 ); textcolor( 15 ); cout << "Pojemnosc samochodu:" << pojemnosc << endl; gotoxy( 25, 11 ); textcolor( 15 ); cout << "Masa samochodu:" << masa << endl; gotoxy( 25, 12 ); textcolor( 15 ); cout << "Kolor samochodu:" << kolor << endl; gotoxy( 25, 13 ); textcolor( 15 ); cout << "Ilosc drzwi samochodu:" << iloscdrzwi << endl; gotoxy( 25, 14 ); textcolor( 15 ); cout << "Wysokosc samochodu:" << wysokosc << endl; } };
int main( int argc, char * argv[] ) { int znak, licznik = 10; gotoxy( 25, 6 ); textcolor( 14 ); Samochod samo1; cout << "Podaj dane samochodu S1: " << endl; samo1.wczytaj(); clrscr(); Samochod samo2; gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S2: " << endl; samo2.wczytaj(); clrscr(); Samochod samo3; gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S3: " << endl; samo3.wczytaj(); clrscr(); Samochod samo4; gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S4: " << endl; samo4.wczytaj(); clrscr(); Samochod samo5; gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S5: " << endl; samo5.wczytaj(); clrscr(); Menu( licznik ); do { znak = getch(); if( znak == 224 ) znak = getch(); switch( znak ) { case 80: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 15 ) { licznik = 10; } else { licznik++; } gotoxy( 25, licznik ); cout << "->" << endl; } break; case 72: { gotoxy( 25, licznik ); cout << " " << endl; if( licznik == 10 ) { licznik = 15; } else { licznik--; } gotoxy( 25, licznik ); cout << "->" << endl; } case 8: { clrscr(); Menu( licznik ); } break; case 13: { char znak; switch( licznik ) { case 10: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S1: " << endl; samo1.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S1: " << endl; samo1.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S1: " << endl; samo1.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S1: " << endl; samo1.wyswietl(); getch(); } } break; case 11: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S2: " << endl; samo2.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S2: " << endl; samo2.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S2: " << endl; samo2.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S2: " << endl; samo2.wyswietl(); getch(); } } break; case 12: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S3: " << endl; samo3.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S3: " << endl; samo3.wyswietl(); getch(); } } break; case 13: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S4: " << endl; samo4.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S4: " << endl; samo4.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S4: " << endl; samo4.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S4: " << endl; samo4.wyswietl(); getch(); } } break; case 14: { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S5: " << endl; samo5.wyswietl(); gotoxy( 25, 16 ); textcolor( 15 ); cout << "Edytowac samochod(t/n): "; cin >> znak; if( znak == 'n' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S5: " << endl; samo5.wyswietl(); getch(); } if( znak == 't' ) { clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Podaj dane samochodu S5: " << endl; samo5.wczytaj(); clrscr(); gotoxy( 25, 6 ); textcolor( 14 ); cout << "Dane samochodu S5: " << endl; samo5.wyswietl(); getch(); } } break; case 15: { return EXIT_SUCCESS; } break; default: { clrscr(); cout << "eror" << endl; } break; } } } } while( znak != 27 ); return EXIT_SUCCESS; }
Dobrze zrobiłem tego Backspacea?? A czemu jak nacisne drugi raz klawisz backspace to program wraca do menu a nie jak nacisne raz tak samo jest z klawiszem Esc czemu za drugim razem nacisniecia Esc wyłącza się program?? Jak zrobic żeby robilo sie wszytsko jak raz nacisne |
|
malan |
» 2009-05-17 13:26:20 Patrz post wyżej ;p. Poza tym od kiedy po 'case' wpisujemy '}' ? Wystarczy: case 27:...break; |
|
pekfos |
» 2009-05-17 13:26:28 masz tam sporo getch() których wartości nie odczytujesz, przez co musisz nacisnąć dowolny klawisz i np Esc aby wyjść. na pewno wiesz coś o programowaniu skoro dajesz getch() bez zastanowienia co to da? |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-17 13:40:42 możesz powiedzieć w których linikach getch jest zbędne to usune |
|
pekfos |
» 2009-05-17 13:44:00 samo1.wyswietl(); getch(); tu ani Esc ani Backspace nie zadziała i chyba to ci nie pasuje |
|
Macius700 Temat założony przez niniejszego użytkownika |
» 2009-05-17 13:48:43 dobra wywaliłem już wszytskie getch() i program działa tak jak chciałem Po jednym nacisnieciu Backspace program wraca do Menu i po jednym nacisneiciu Esc program wyłacza się całkiem |
|
1 2 « 3 » 4 |