프로그래밍과 잡담

[Qt]3. QPushButton 본문

프로그래밍/Qt

[Qt]3. QPushButton

크레온 2009. 12. 12. 02:27

API는 여기

도큐먼트를 보면  Inherits QAbstractButton. 라고 나와있는데..

이것의 뜻은 영어를 보면 알겠지만.. 모르면 검색하면 나오니까.. 상속이라는 뜻인데..

QPushButton은 QAbstractButton을 상속 받았다.

그러므로 QAbstractButton의 메소드나 시그널, 슬롯등 여러가지를 가지고 있다.

어쨌든 사용법..



버튼에 기능을 추가~!

버튼의 기능을 추가 하기 전에..

Qt의 버튼이나 기타 모든 여러가지의 방식들은 SIGNAL과 SLOT이라는걸 사용한다.

API 경우는 CALLBACK 함수를 사용해서 하는데.. 기억도 안나네..

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
          case WM_COMMAND:
                  switch(LOWORD(wParam))
                  {
                        어쩌구 저쩌구
                   }
}

망할 MFC 경우는 메시지 맵이라는걸 써서 하고..
보통 그냥 더블클릭하면 자동으로 만들어주는데.. 수동으로 만들려면 되게 귀찮다. 이따위로 생긴다.. BEGIN_MESSAGE_MAP(CPushButtonView, CFormView) ON_BN_CLICKED(IDC_BUTTON1, &CPushButtonView::OnBnClickedButton1) END_MESSAGE_MAP()
난 MFC의 이 방식이 되게 싫어.. 자동으로 만들어주는건 좋지만.. 오히려 이해하기 힘들게 만드는 경우가 있어서..ㅡㅡ 그리고 삭제를 해도 이상하게 삭제 되는 경우가 있어서..

어쨌든 SIGNAL이란 우리나라 말로 신호.. SLOT은 구멍, 홈 이런 뜻이 있는데.. 말 그래도.. 신호가 생기면 구멍에
받으라는거다..

자 인제 기능 추가를 해보자..



Qt에서 시그널과 슬롯은 기본적으로 사용되는 기능들이다.
정리 SIGNAL ,SLOT 사용법.
QObject::connect(시그널을 발생시킬 클래스변수 포인터,SIGNAL( 시그널 메소드() ),
                          시그널을 받을 클래스 변수포인터 , SLOT( 슬롯 메소드()   ) );

시그널이나 슬롯들은  각 해당하는 클래스의 도큐먼트들을 보면 나와있으니까 사용할때 참고하면 된다..

끗..


이전꺼..
2 .QWidget
1. Hello World
반응형

'프로그래밍 > Qt' 카테고리의 다른 글

[Qt] http에 연결을 해보자..  (0) 2010.01.11
[Qt] 4. 사용자 정의 클래스.  (0) 2009.12.12
[Qt] 2. QWidget  (0) 2009.12.05
[Qt를 하자]1. Hello World를 띄우자.  (0) 2009.12.03
Qt 4.6 이 나왔다.  (0) 2009.12.03
Comments