Czyszczenie okna.

0

Cześć, piszę okienkowy program ilustrujący pracę bankomatu. Natrafiłem na taki problem, że po wciśnięciu dowolnego przycisku na oknie chciałbym wyczyścić całe to okno i nałoży kolejne przyciski, identycznie jak to działa w prawdziwym bankomacie. Czy mógłby podpowiedzieć jak to zrobić?

0

No szczerze. Tutaj to ty masz swoje własne klasy, funkcje itd. Załóżmy, że masz klasę cashPoint (sorry za camelCase. Zostało mi z javy :P). Załóżmy, że byłaby to klasa która odpowiada za wyświetlanie danych w jakimś tam obszarze (niby ten ekran). Tam dajesz jakąś funkcję np. clearScreen(). I ona się tym zajmuje, np. usuwa wszystkie elementy czy cuś.

0

To zależy czego używasz do swojego projektu (konsola c++, jakaś biblioteka okienkowa?), w projekcie konsolowym c++ jest funkcja system("cls"), przed każdym kolejnym wyświetleniem jakiegoś menu musisz wywołać tą funkcję, z grubsza mogłoby to wyglądać tak:

#include <iostream> 
using namespace std;

void printMainScreen()
{
	system("cls");
	cout << "wybierz opcje:\n";
	cout << "1. pokaz srodki\n";
	cout << "2. wyplata\n";
	cout << "3. zakoncz\n";
}

void printBankAccountScreen()
{
	int option;
	system("cls");
	cout << "1. pokaz srodki na kacie:\n";
	cout << "2. wroc do glownego menu\n";
	cin >> option;
}

void printPaymentScreen()
{
	system("cls");
	int amount;
	cout << "wpisz kwote:\n";
	cin >> amount;
	cout << "wyplacona zostanie kwota: " << amount << "\n";
	cin >> amount;
}
 
int main(int argc, char **argv)
{
	bool end = false;
	
	while (!end)
	{
		printMainScreen();
	
		int option;
		cin >> option;
	
		switch (option)
		{
			case 1:
				printBankAccountScreen();
				break;
			case 2:
				printPaymentScreen();
				break;
			case 3:
				end = true;
				break;
			default:
				cout << "wybrano nieprawidlowa opcje";
		}
	}
	
    return 0;
}

Najlepiej by było jakbyś pokazał co nieco co tam nabazgroliłeś.

0

Biblioteka okienkowa, w konsoli nie miałbym problemu, a przy okienkach własnie pojawia się ten problem, że nie wiem jak ten powiedzmy TForm wyczyścić i umieszczać coś sobie na nim ponownie.

1

To jest Delphi?
W prawdziwym bankomacie masz po bokach przyciski które nie są usuwane tylko funkcja za jaką odpowiadają jest zależna od kontekstu, rozstaw sobie te przyciski po bokach jakiejś kontrolki rysującej informacje (ekran główny), pozostaje wyczyścić ekran główny i zmieniać funkcje przycisków.

0

Tak Delphi. Dzięki czaffik, sam sobie utrudniłem zadanie, cenna wskazówka.

0

Natrafiłem teraz na trochę inny problem. Mam już jakby zarys tego bankomatu i teraz chodzi mi o utworzenie okna, bądź paska menu, w którym wyświetlone zostaną ustawienia dla danego klienta, saldo, pin, limit miesieczny itd.
Coś jak MenuStrip tylko że w MFC byłoby fajne, tam jedna opcja i pokazanie nowego okna, a w nim parę opcji do ustawienia danych kwot dla obecnie korzystającego klienta.
Ewentualnie przycisk np "UstawLimity" i nowe okno, które wygladałoby jak to co napisałem linijkę wyżej.
Mógłby ktoś podpowiedziec jak się za to zabrac?

1 użytkowników online, w tym zalogowanych: 0, gości: 1