1580, 78/79 회원가입  로그인  
   sihun1113
   <샤오쓰 타로>4.첫화면구현pri.h

http://www.hackerschool.org/HS_Boards/zboard.php?id=Free_Lectures&no=1784 [복사]


이번 강좌는 샤오쓰 타로의 첫화면을 구현하겠습니다.



첫화면은 우선 기본적으로  베이스가되는 그림과 틀이 필요하군요.



자, 그럼 틀을 만들어 볼까요?



먼저 소스를 보시겠습니다.



/*첫 화면의 출력부분
기본 틀출력,기본첫메뉴버튼 출력*/
void pri::first()
{
     gotoxy(0,0);//32(64)*30사이즈
     WHITE;
     cout<<"┌──────────────────────────────┐";
     cout<<"│               ";
     YEL;
     cout<<",'";
     WHITE;
     cout<<"                                           │";
     cout<<"│             ";
     YEL;
     cout<<",',',,,',,',";
     WHITE;
     cout<<"                                   │";
     cout<<"│           ";
     YEL;
     cout<<",','',', ',',,'',,',";
     WHITE;
     cout<<"                             │";
     cout<<"│          ";
     YEL;
     cout<<",' ',',,,',  ,',,'''";
     WHITE;
     cout<<"                              │";
     cout<<"│          ";
     YEL;
     cout<<"',',,',,',',,','',',,'";
     WHITE;
     cout<<"                            │";
     cout<<"│          ";
     YEL;
     cout<<",''    ,',', ,',',  '";
     WHITE;
     cout<<"                             │";
     cout<<"│           ,      ";
     YEL;
     cout<<"'        ','";
     WHITE;
     cout<<"                              │";
     cout<<"│           .   o      o     ";
     YEL;
     cout<<",'";
     WHITE;
     cout<<"                              │";
     cout<<"│            .     :       .                                 │";
     cout<<"│             .      _    .                                  │";
     cout<<"│              .        .                                    │";  
     cout<<"│                ` . .                                       │";  
     cout<<"│     * . . . . ";
     HIGH;
     cout<<",..PpP.,";
     WHITE;
     cout<<" . .*                                │";
     cout<<"│    ";
     YEL;
     cout<<"8888888";
     WHITE;
     cout<<"',`'";
     HIGH;
     cout<<"`      ,";
     WHITE;
     cout<<"'`,`'";
     YEL;
     cout<<"88";
     WHITE;
     cout<<"                              │";
     cout<<"│  ";
     YEL;
     cout<<"88888888888";
     WHITE;
     cout<<",'`";
     HIGH;
     cout<<",    ,";
     WHITE;
     cout<<"`'`";
     YEL;
     cout<<"888888";
     WHITE;
     cout<<"                             │";
     cout<<"│ ";
     YEL;
     cout<<"8888888 88888";
     WHITE;
     cout<<",'";
     HIGH;
     cout<<"`    .";
     WHITE;
     cout<<"'";
     YEL;
     cout<<"888888888";
     WHITE;
     cout<<"                            │";
     cout<<"│";
     YEL;
     cout<<"888888   888888";
     WHITE;
     cout<<".";
     HIGH;
     cout<<"`bBBb`";
     YEL;
     cout<<"8888   8";
     WHITE;
     cout<<"                              │";
     cout<<"│ ";
     YEL;
     cout<<"8888888  888888";
     WHITE;
     cout<<"`pPPp";
     YEL;
     cout<<"88888   8";
     WHITE;
     cout<<"                              │";
     cout<<"│  ";
     YEL;
     cout<<"8888888, 88888      8888  ";
     WHITE;
     cout<<",.``,'                          │";
     cout<<"│------------------------------------------                  │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"│                                                            │";
     cout<<"└──────────────────────────────┘";
}



화면을 실행해보면 클 상자틀안에 안내를위한 기본그림이 찍혀나옵니다.



소스를 봐도 별것 없군요. 2번째 강좌에서 설명한 부분인 색깔바꾸기를 이용하여



색깔을 바꿔가면서 출력을 한것빼곤 이렇다하게 어려운 부분이 없습니다.



다만 이렇게 콘솔 프로그램의 틀을 만들면



다음 프로그래밍의 구현부터 틀의 제약이 가해지므로 신중히 사이즈를 고려해야합니다



잊지 마세요~@





이렇게 그림까지 넣은 틀을 만들어서 컴파일을 해보니



우상단이 뭔가 허전하군요



이럴땐 이펙트가 필요하지요.



전 별이펙트를 넣어보았습니다.



/*별(스타) 이펙트 부분
별이떨어지는(유선)의 이펙트를 화면 우측상단에 출력해준다.*/
void pri::stareffect()
{
     //st0
     WHITE;
     gotoxy(53,1);
     cout<<"/";
     Sleep(50);
     gotoxy(52,2);
     cout<<"/";
     Sleep(50);
     gotoxy(51,3);
     cout<<"/";
     Sleep(50);
     gotoxy(50,4);
     cout<<"/";
     Sleep(50);
     //st1
     gotoxy(49,5);
     cout<<"/";
     gotoxy(60,1);
     cout<<"/";
     Sleep(50);
     gotoxy(48,6);
     cout<<"/";
     gotoxy(59,2);
     cout<<"/";
     Sleep(50);
     gotoxy(47,7);
     cout<<"/";
     gotoxy(58,3);
     cout<<"/";
     Sleep(50);
     gotoxy(46,8);
     YEL;
     cout<<"☆";
     WHITE;
     gotoxy(57,4);
     cout<<"/";
     //st2
     Sleep(50);
     gotoxy(56,5);
     cout<<"/";
     gotoxy(60,6);
     cout<<"/";
     Sleep(50);
     gotoxy(55,6);
     RED;
     cout<<"☆";
     WHITE;
     gotoxy(59,7);
     cout<<"/";
     Sleep(50);
     gotoxy(58,8);
     cout<<"/";
     Sleep(50);
     gotoxy(57,9);
     cout<<"/";
     Sleep(50);
     gotoxy(56,10);
     HIGH;
     cout<<"☆";  
     WHITE;
}



역시나 별것 없습니다



저번과 다름이라면 Sleep문을 넣어서 딜레이를 건것인데요.



Sleep(1000);을 하면 1초간의 딜레이가 걸립니다.



50은 0.05초이지요.



또한 이Sleep문을 쓸려면 windows.h를 인클루드해야하는데



앞서 show.h에서 하였기때문에 이 내용이 들어가는 파일인 pri.h에는



#include "show.h"



만 하면 된답니다.







이제 위쪽의 이펙트까지 넣었으니 환영인 사가 필요할것 같습니다.



이 환영인사는 화면의 오른쪽 중간에 넣을 건데요..



음...



생각을 해보죠..



다음 강좌로 이어집니다.
[출처] <샤오쓰 타로>4.첫화면구현pri.h (C언어를 배우자) |작성자 해커푸


  Hit : 6069     Date : 2011/06/04 08:19



    
40   * 해킹의 공격기술 *[3]     HackerMapia
03/01 13263
39   * C언어를 꼭배워야하는가 *[2]     HackerMapia
02/21 8406
38   * C C++ *     HackerMapia
03/01 7718
37   * 윈도우를 빠르게열자 *[6]     HackerMapia
02/24 7404
36   * 윈도우 단축키 아는것들 *[7]     HackerMapia
02/20 7183
35   * 윈도우 해킹의 기본원리 *     HackerMapia
02/21 17834
34   * 윈도우 해킹의 기본 원리*[29]     oes2
08/26 12955
33   * 윈도우 종료를 빠르게 *[2]     HackerMapia
02/20 7703
32   * 점화식의 간단한 알고리즘     limjongmin
08/20 8927
31   * 점화식 간단하게     limjongmin
08/20 6748
30   * 인터넷검색이 달인이 되는 10가지 방법 *[1]     HackerMapia
02/24 7758
29   (꼼수) L.O.B 한방에 클리어하기[1]     해킹잘하고싶다
01/14 875
28   (펌)Wireshark 설치 및 사용법입니다.~[2]     Mach
04/29 7825
27   (WindowXP기준) 간단한 컴퓨터 최적화     dzhfldk
08/22 6709
26   (잡담)포인터는 쉽다?[2]     sihun1113
05/01 6245
25   (2차수정)단순하고 위험한 파일 업로드 해킹기술[2]     gohy032
07/30 13196
24   <샤오쓰 타로>5.안내문표시pri.h[1]     sihun1113
06/04 6600
  <샤오쓰 타로>4.첫화면구현pri.h     sihun1113
06/04 6068
22   <샤오쓰 타로>3.show.h-2     sihun1113
06/04 6550
21   <샤오쓰 타로>2. show.h 구현-1     sihun1113
06/04 6624
[1]..[71][72][73][74][75][76][77] 78 [79]

Copyright 1999-2023 Zeroboard / skin by Hackerschool.org / Secure Patch by Hackerschool.org & Wowhacker.com