서브위젯에서 다른 서브위젯 참조
2012. 7. 16. 11:10ㆍ언어/QT
QT에서 Main.h, A.h, B.h파일이 있다고 가정하였을 때 Main에서 A를 불러오고 A에서 B를 선언하고 B에서 A를
선언하면 오류에 시달리게 된다. 빌더에서는 문제없이 되는데... 이유는 잘 모르겠지만 이럴땐 이렇게 선언해줘
야 한다. Main에서 A와 B를 먼저 선언하고
A와 B의 cpp파일에 #include "mainwindow.h" 파일을 선언한다.
그리고 전역 변수로 MainWindow *amw; 를 선언하여 준다.
마지막으로 생성자에서 다음과 같이 코딩하고 사용하면 된다.
amw = (MainWindow *)parent;
B의 경우도
bmw = (MainWindow *)parent;로 선언 해주고 A클래스의 함수를 참조 할때는 다음과 같이 사용해야 한다.
bmw->a->함수();
A Class에서 B Class를 참조할때도 비슷한 방법을 써줘야 한다.
amw->b->함수();
'언어 > QT' 카테고리의 다른 글
QString to char array (0) | 2012.07.30 |
---|---|
QT 컴파일 하기 (0) | 2012.07.27 |
메인윈도우 시스템 메뉴바 없애기 (0) | 2012.07.05 |
클릭한 오브젝트 정보 가져오기 (0) | 2012.05.22 |
Object name 가져오기 (0) | 2012.05.08 |