# Native Code > برنامه نویسی با C > برنامه نویسی GTK، GTK+‎ و wxWidget > مبتدی: کمک در ایجاد یک کادر با gtk در C++‎‎

## mohamnt

سلام
بااینکه انجام طبق قانون انجام پروژه خلاف هست و تایپیک حذف میشه ولی یه در خواست دارم 
من بسته های gtk -dev که برای آزمایش و توسعه نرم افزار توسط gtk  در محیط برنامه نویسی ای مثل C++‎‎ هست رو نمی تونم نسب کنم چون اررور میده و می نویسه gtk
libgtk2.0-dev but it is not going to be installed در سیناپتیک 
از طرفی  من تازه اینکه باید از گرافیک هم استفاده کرد رو دیروز فهمیدم و مهلت انجام پروژه هم تا 12 هست 
نمی خوام زیاد حرف بزنم در کل این کدیه که من نوشتم #include <iostream>
#include <cstdlib>
#include <fstream>
#include <cstring>
using namespace std;
class info
{
    public:
        int stpass(bool ret);
        void cadd();
        void clist();
        void alist();
        void cinfo();
    };
int info::stpass(bool ret) // if bool return true & exit program else run othr function
{
    const char *mypass="123";
    int retype=0;
    for (int i=0;i<4;i++)
    {
        char *password=getpass(" \v please Enter your Password : ");
        if (strcmp(password,mypass)==0) break;
        else
        {
            system("clear");
            cout<<"Sorry, try again\t\n\n";
            ++retype;
            if(retype==3)
            {
                cout<<"3 incorrect password attempts\n";
                {
                ret=false;
                return 0;}
            }
        }
    }
    return(ret);
}
void info::cadd()
{
    system("clear");
    ofstream myfile ("list.txt",ios::app);
    char fname[20],lname[20],faname[20],err[2];
    unsigned short int age;
    long c_no;
    for (;;)
    {
        system("clear");
        cout<<"Enter customer information (0 = quit ) \n";
        cout<<"number: \t";
        cin>>c_no;
        if(c_no!=0)
        {
            cout<<"name : \t";
            cin.getline(err,2);
            cin.getline(fname,20);
            cout<<"last name : \t";
            cin.getline(lname,20);
            cout<<"father :  \t";
            cin.getline(faname,20);
            cout<<"age : \t";
            cin>>age;
            myfile<<c_no<<"\n"<<fname<<"\n"<<lname<<"\n"<<fana  me<<"\n"<<age<<"\n";
        }
        else
        {
            myfile.close();
            return ;
        }
    }
    return ;
}
void info::clist()
{
    string s;
    ifstream Myfile("list.txt");
    system("clear");
    if( Myfile.is_open() )
    {
        while(!Myfile.eof())
        {
            int j=0;
            for( int i = 0; i <5; i++)
            {
                getline( Myfile, s );
                j++;
                if(j==2||j==3)
                cout<< s << " ";
            }
            cout<<"\n";
        }
    }
    else
        cout << "Can not open the file.\n";
        cout<<"for continue press Enter\n";
        char c,err[2];
        cin.getline(err,1);
        cin.get(c);
        return ;
   
}
void info::alist()
{
    string s;
    ifstream Myfile("list.txt");
    system("clear");
    cout<<" \tname\tfamily\tfather\tcustomer.no \n\n";
    if( Myfile.is_open() )
    {
        while(!Myfile.eof())
        {
            int j=0;
            for( int i = 0; i <5; i++)
            {
                getline( Myfile, s );
                j++;
                if(j==2||j==3||j==4||j==5)
                cout<<"\t"<<s ;
            }
            cout<<"\n\n";
        }
    }
    else
        cout << "Can not open the file.\n";
        cout<<"for continue press Enter\n";
        char c,err[2];
        cin.getline(err,1);
        cin.get(c);
        return ;
}
void info::cinfo()
{
    system("clear");
    cout<<"enter your Customer Number for search :";
    string s,numfs ;
    char st[5];
    cin>>numfs;
    ifstream Myfile("list.txt");
    system("clear");
    if( Myfile.is_open() )
    {
        while(!Myfile.eof())
        {
            for( int i = 0; i <5; i++)
            {
                getline( Myfile, s );    
                cout<<s;
            }
        }
    }
}

int main()
{
    info pss;
    bool ret=true;
    pss.stpass(ret);
    cout<<" ";
    if (ret==true)
    {
    input:
    system("clear");
    cout<<"\t\t <<<<<<<<<<<<<choose 1 Number>>>>>>>>>>>>>>>>>\n\n ";
    cout<<"1 - add a new customer \n\n 2 -customer list \n\n 3- account list ";
    cout<<"\n\n 4 -customer information \n\n 5 -exit\n\n";
    char choose;
    cin>>choose;
    switch (choose)
    {
        case '1':
        pss.cadd();
        break;
        case '2':
        pss.clist();
        break;
        case '3' :
        pss.alist();
        break;
        case '4':
        pss.cinfo();
        break;
        case '5':
        return 0;
        default :
        cout<<"try again\n";
    }
    goto input;
}
return 0;
}
حالا باید در قسمتی که از من پسورد گرفته میشه توی stpass یک صفحه گرافیکی بیاد که در اون از من پسورد گرفته بشه (چیزی شبیه پسورد بایوس) و بعد سه اشتباه از برنامه بیاد بیرون ولی اگه درست بود ادامه برنامه اجرا بشه. :افسرده:

----------

