|
무슨 게임 하는거 같고 ㅎㅎㅎ 잘봤습니다.. 꾸벅(__)
조대현.Clau 님이 쓰신 글 :
: 다음과 같은 판넬 움직임을 원하시는거 맞죠? 아니면 뭐 ㅋ^^
:
: 판넬이 2개가 있고, 서로 밀려서 움직입니다.
:
: 1. 1,2번 다운
: [1]
: [2]
: [빈공간]
:
: 여기서 1번을 누르면 2번을 밀어서 같이 내려가야죠.
:
: [빈공간]
: [1]
: [2]
:
: 2. 2번만 다운
: [1]
: [2]
: [빈공간]
:
: 여기서 2번을 누르면 2번만 내려가겠죠.
:
: [1]
: [빈공간]
: [2]
:
: 3. 1,2번 업
: [빈공간]
: [1]
: [2]
:
: 여기서 2번을 누르면 1번을 밀어서 같이 올라가겠죠.
:
: [1]
: [2]
: [빈공간]
:
: 4. 1번만 업
: [빈공간]
: [1]
: [2]
:
: 여기서 1번을 누르면 1번만 올라가죠.
:
: [1]
: [빈공간]
: [2]
:
: //////////////////
:
: 일단 원래 소스에서 b와 a가 panel의 Top을 받아와서 조정하시는데 다시 Panel에 돌려주는 코드가 없습니다.
:
: 또 타이머가 생각보다 빠르게 움직이지 않고요.
:
: 제가 소스를 많이 수정해봤는데 보시구 말씀해주세요.
:
: 니라카 님이 쓰신 글 :
: : 현제 판넬 을 누르면 밑으로내려가고 한번더누르면 올라가게 짜고있습니다
: :
: :
: :
: : 근데 그게
: :
: :
: :
: : 판넬1
: :
: :
: :
: : 판넬2
: :
: :
: :
: : 인경우 판넬1을 클릭하면 동시에내려가야하며
: :
: :
: :
: : 판넬1
: :
: : 판넬2
: :
: :
: :
: : 의 경우 판넬2 누르면 둘다 올라가야합니다,
: :
: :
: :
: : 현제제가 짠소스는
: :
: :
: :
: :
: :
: : -------------------
: :
: : //---------------------------------------------------------------------------
: :
: : #include <vcl.h>
: : #pragma hdrstop
: :
: : #include "Unit1.h"
: : //---------------------------------------------------------------------------
: : #pragma package(smart_init)
: : #pragma resource "*.dfm"
: : TForm1 *Form1;
: : int sw=0 ,a,sf,b=56,sg,pat,pay,sh=0,d;
: : //---------------------------------------------------------------------------
: : __fastcall TForm1::TForm1(TComponent* Owner)
: : : TForm(Owner)
: : {
: :
: :
: : }
: : //---------------------------------------------------------------------------
: :
: :
: :
: :
: :
: :
: : void __fastcall TForm1::Panel3Click(TObject *Sender)
: : {
: : Timer1->Enabled=true;
: : pat=1;
: :
: :
: : }
: : //---------------------------------------------------------------------------
: :
: :
: :
: :
: : void __fastcall TForm1::Timer1Timer(TObject *Sender)
: : {
: : if(pat==1)
: : {
: : Panel3->Top=b;
: : if(sf==0 && b<=416) // 내리기
: : {
: : b++;
: : if(sf==0 && b==416) // sf=1
: : {
: : sf=1;
: : pat=0;
: : Timer1->Enabled=false;
: : }
: : }
: : else if(sf==1 && b>=56) //올리기
: : {
: : b--;
: : if(sf==1 && b==56)
: : {
: : sf=0;
: : pat=0;
: : Timer1->Enabled=false;
: : }
: : } ///////////판넬2
: : if(pay==1)
: : {
: : Panel2->Top=a;
: : if(sg==0 && a<=360) // 내리기
: : {
: : a++;
: : if(sg==0 && a==360) // sg=1
: : {
: : sg=1;
: : pay=0;
: : Timer1->Enabled=false;
: : }
: : }
: : }
: :
: : }
: :
: : }
: : //---------------------------------------------------------------------------
: :
: : void __fastcall TForm1::Panel2Click(TObject *Sender)
: : {
: : Timer1->Enabled=true;
: : pay=1;
: : }
: : //---------------------------------------------------------------------------
|