Bisik Tetangga
Untuk masuk ke forum, silahkan Login atau mendaftar (Share Your Knowledge)


Tempat Asyik Nongkrong Sekaligus Menambah Ilmu Pengetahuan
 
IndeksFAQPencarianPendaftaranLogin
Kami mohon partisipasinya dalam pengembangan forum. Klik Disini


Pasang Iklanmu disini gratis (selama masa promosi)
ads ads ads ads

Share | 
 

 Aplikasi Notepad berbasis C++

Topik sebelumnya Topik selanjutnya Go down 
PengirimMessage
avatar
harry170891
Administrator

Jumlah posting : 212
Reputasi : 11
Join date : 04.12.10
Age : 25
Lokasi : Bandung, Indonesia

PostSubyek: Aplikasi Notepad berbasis C++   Sat Sep 24, 2011 12:37 pm

Share coding kali ini membahas bagaimana struktur syntax C++ dalam menghasilkan aplikasi layaknya notepad.

silahkan untuk dikembangkan!

Code:
#include<dos.h>
#include<process.h>
#include<string.h>  // for various functions of strings like gets or puts
#include<fstream.h>  // for files
#include<stdio.h>
#include<iostream.h>
#include<conio.h>
void starting();
void typing();
void openfile(char *);
void newfile(char *);
void print(char i[],int x,int y);

char ch ;
char s[20];
char xs[20];
char ys[20];

void main()
{
    clrscr();
    textmode(BW40);
    print(" MY NOTEPAD ",3,14);
    print(" Presented",6,14);
    print(" By ",7,17);
    print(" Zahid Ashfaq",8,13);


      textmode(BW80);

starting();


  typing();
  getch();
  }



 void starting()
 {  textcolor(1);
    textbackground(WHITE);


    clrscr();
    for(int i=0 ;i<45;i++)
    {if(i==0||i==44)
      cout<<"||";
      else if(i==4)
      cout<<" ctrl+O(Open file)";
      else if(i==24)
      cout<<" ctrl+n(New file)";
      else
      cout<<"=";}
        gotoxy(80,24);  cout<<endl;
    for( i=0 ;i<37;i++)
    {if(i==0||i==47)
      cout<<"||";
      else if(i==4)
      cout<<" ctrl+s(save file)";
      else if(i==16)
      cout<<" ctrl+k(Help)";
      else if(i==26)
      cout<<"ctrl+q(Quit)";
      else
      cout<<"=";}
}


void typing()
{  int i=0;
    char *p=new char[2000];
 step1 :  int row=2 ,col=1;
 while(ch!=19)
{
gotoxy(col,row);

  step2:  if(col==79)
    {col=1;row++;}
    else if (row==24)
      goto step1;
    int a;
    ch=getch();
    if(ch == 0)
    ch = getch();

      a=ch;  // To convert character to its ascii code

      switch(a)
{
case 13 : row=row++;col=1;      // case for press enter for next line
        gotoxy(col,row);
        ch='\n';
        break;

case 8 :
          if(col==1)          // case for backspace
        {row--;col=78;}
      else
        {col--;
        cout<<"  ";
        i--;
        }
        continue;

case 9 :    col=col+8;          // case for tab function
        if(col>79)
        {row++;col=col-79;
        }
        continue;

case 72 : row--;              //upper arrow key
      continue;

case 77 : col++; continue;    //right arrow key

case 75 : col--; continue;    //left arrow key

case 80 :                    //down arrow key
      row++;
      continue;

case 14 :  clrscr();      //to creat new file ctrl+n
        cout<<"Enter File`s Path ";
        gets(s);
        newfile(s);
        starting();
        break;

case 15 :    clrscr();  //to open existing file  ctrl+o
          cout<<"Enter file`s path to be open :" ;
          gets(xs);
          starting();
          openfile(xs);
          continue;




case 11 :    clrscr();
          gotoxy(20,3);
          cout<<"~`~`~`~`~  HELP PORTION  ~`~`~`~`~";
          gotoxy(20,4);
          cout<<"Following Are the Keys Used in My-Note PAD : ";
        int za=10;
          for(int i=0;i<46 ;i++ )
          {
          gotoxy(za,5);
        cout<<"=";za++;}
        za=6;
          for(i=0;i<15;i++)
          {gotoxy(10,za);
        cout<<"|"<<endl;

        za++;}
            za=10;
          for( i=0;i<46 ;i++ )
          {
          gotoxy(za,21);
        cout<<"=";
        za++;}
        za=6;
          for(i=0;i<15;i++)
          {gotoxy(56,za);
        cout<<"|"<<endl;

        za++;}

        gotoxy(13,6);
        cout<<" 1-To Open File Press  ( ctrl + o ) ";
        gotoxy(13,8);
        cout<<" 2-To create New File Press(ctrl+n) " ;
        gotoxy(13,10);
        cout<<" 3-MOve Arrow keys (up,down,right,left)" ;
        gotoxy(13,12);
        cout<<" 4-Back Space ";
        gotoxy(13,14);
        cout<<" 5-Save File(ctrl+s)";
        gotoxy(13,16);
        cout<<" 6-Enter For new line ";
        gotoxy(13,18);
        cout<<" 7-Enter ctrl+q(Quit)";

        gotoxy(13,20);
        cout<<"Press any key to Go back " ;

          getch();
          clrscr();
        starting();

        continue;


case 17 :  clrscr();
      gotoxy(24,6);
      cout<<"Thank You For using PIcs-soft Word ";
      cout<<endl;
      gotoxy(24,8);
      cout<<"Have A NIce Time ";
      getch();
      exit(0);






  }

    cout<<ch;
      p[i]=ch;
      col++; i++;

    p[i]='\0';
      }
      clrscr();
      cout<<"enter path where you want to save the file ";
      gets(ys);  int j=0;
      ofstream f1(ys,ios::out);
            while(p[j]!='\0')
      {f1.write((char*)&p[j],sizeof(p[j]));
        j++;}
      f1.close();
      delete [] p;
    exit(0);



}


void newfile(char *s)
{
  ofstream file(s,ios::out);
  file.close();
}

void openfile(char *xs)
{ char ch;  int col=3,row=2;
gotoxy(col,row);
  ifstream file(xs,ios::in);
  while( file.read((char*)&ch,sizeof(ch)))
                    cout<<ch;

          file.close();
}


void print(char i[],int x,int y)
    {
    char far* ptr=(char far*) 0xB8000000+(160*x)+(2*y) ;
    for(int a=0; i[a]!='\0'; a++)
        {
        *ptr=i[a];
        *(ptr+1)=16;
        ptr=ptr+2;
        delay(250);
        }
    ptr=ptr+2;
    }




Untuk pertanyaan sekaligus saran/kritik bisa PM dan untuk hasil.. mending coba sendiri deh Razz
Kembali Ke Atas Go down
Lihat profil user http://www.bisiktetangga.co.cc/
 

Aplikasi Notepad berbasis C++

Topik sebelumnya Topik selanjutnya Kembali Ke Atas 
Halaman 1 dari 1

Permissions in this forum:Anda tidak dapat menjawab topik
Bisik Tetangga :: Komputer :: Software Developer :: Bedah Code Pemrograman-