bankomat.h

来自「Cash point simulator. You can add/remove」· C头文件 代码 · 共 114 行

H
114
字号
#ifndef bankomatH
#define bankomatH

#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <Graphics.hpp>

#include <string.h>
#include "manager.hpp"
#include "uzytkownik.hpp"

class TFBank : public TForm {

    __published:

        TGroupBox *Identyfikator;
        TEdit *NrKarty;
        TPanel *PanelGlowny;
        TImage *RysunekEkranu;
        TBevel *Ramka;
        TButton *b1;
        TButton *b2;
        TButton *b3;
        TButton *b4;
        TButton *b5;
        TButton *b6;
        TButton *b7;
        TButton *b8;
        TButton *b9;
        TButton *bc;
        TButton *b0;
        TButton *bz;
        TLabel *Komunikat;
        TLabel *Edytor;
        TImage *Pieniazki;
        TLabel *Kasiora;
        TTimer *Stoper;
        TListBox *Uzytkownicy;
        void __fastcall NrKartyChange(TObject *Sender);
        void __fastcall NrKartyEnter(TObject *Sender);
        void __fastcall b1Click(TObject *Sender);
        void __fastcall b2Click(TObject *Sender);
        void __fastcall b3Click(TObject *Sender);
        void __fastcall b4Click(TObject *Sender);
        void __fastcall b5Click(TObject *Sender);
        void __fastcall b6Click(TObject *Sender);
        void __fastcall b7Click(TObject *Sender);
        void __fastcall b8Click(TObject *Sender);
        void __fastcall b9Click(TObject *Sender);
        void __fastcall b0Click(TObject *Sender);
        void __fastcall bcClick(TObject *Sender);
        void __fastcall bzClick(TObject *Sender);
        void __fastcall PieniazkiClick(TObject *Sender);
        void __fastcall KasioraClick(TObject *Sender);
        void __fastcall StoperTimer(TObject *Sender);

    private:

    public:

        Manager *manager;       // Wskazanie na pamiec managera.
        Manager m;              // Manager bankomatowy.
        Uzytkownik u;           // Uzytkownik aktualnie korzystajacy.
        AnsiString tresc;       // Tresc z klawiatury bankomatu.
        int czynnosc;           // Czynnosc uzytkownika.
        int bladpin;            // Ilosc blednych wprowadzen nr PIN.
        bool edycja;            // Czy klawiatura numeryczna jest wlaczona.
        int n;

        __fastcall TFBank(TComponent* Owner);

        // Konwersja AnsiString na string
        string AnsiToString(AnsiString as) {
            string s = (string)(as.c_str());
            return s;
        }

        // Konwersja string na AnsiString
        AnsiString StringToAnsi(string s) {
            AnsiString as = "";
            for(unsigned int i = 0; i < s.length(); i++) {
                as += (char)(s[i]);
            }
            return as;
        }

        // Dodawanie cyfry do tresci i do edytora
        void DodajCyfre(AnsiString as) {
            if(edycja) {
                // Jesli edycja jest w彻czona to dodajemy do tresci
                // liczbe w postaci AnsiString przekazywana jako argument as
                tresc += as;
                if(czynnosc == 0) {
                    // Jesli jest czynnosc == 0 to znaczy ze wprowadzamy PIN
                    // wiec cyferki musza byc zkodowane pod postacia hwiazdki
                    AnsiString h = "";
                    // Drukujemy tyle gwiazdek ile jest cyfr w tresci
                    for(int i = 0; i < tresc.Length(); i++) h += "*";
                    // Wysylamy gwiazdki do Captiona edytora
                    Edytor -> Caption = h;
                } else {
                    // Jesli nie wprowadzamy numeru PIN to tylko normalnie
                    // wyswietlamy tresc.
                    Edytor -> Caption = tresc;
                }
            }
        }
};

// Komunikaty do wyswietlania:
const AnsiString WPROWADZ_PIN       = "Wprowad

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?