QWidget에서 상속받은 클래스의 스레드를 만들고 싶습니다. 사실 QThread를 사용하여 다중 상속을 시도했지만 실패하고 스레드를 사용하여 특정 멤버 함수를 실행하려고합니다. 이것을 어떻게 할 수 있습니까? 누구 아이디어가 있습니까?QWidget에서 상속 한 클래스의 스레드를 만드는 방법은 무엇입니까?
0
A
답변
0
중첩 된 클래스를 사용하면 일반적인 위젯 클래스와 중첩 된 실행 메서드에서 필요한 모든 모든 메서드에 대한 포인터를 전달할 수 있습니다. GUI를하기 때문에, 당신은 "threadMethod"어떤는 QWidget 메소드를 호출하지 않아야하지만
class MyWidget : public QWidget
{
[...]
void threadMethod();
};
class MyThread : public QThread
{
[...]
MyThread(MyWidget* widget)
: mWidget(widget)
{
}
void run()
{
mWidget->threadMethod();
}
MyWidget* mWidget;
};
및 따라서 위젯은 소속 :
2
0
GUI 모듈에 속하는 Qt 클래스는 재진입 가능하지 않습니다. 그들은 반드시 주 스레드에서 실행되어야합니다.
관련 문제
- 1. QWidget에서 상속 한 Qt 플러그인을 만드는 방법
- 2. 예나에서 한 클래스의 인스턴스를 다른 클래스의 인스턴스로 만드는 방법은 무엇입니까?
- 3. 스레드를 동적으로 만드는 방법은 무엇입니까?
- 4. 상속 문제입니다. 기본 클래스의 인스턴스를 여러 개 만드는 방법은 무엇입니까?
- 5. 웹 서비스 스레드를 안전하게 만드는 방법은 무엇입니까?
- 6. 클래스 함수 내에서 스레드를 만드는 방법은 무엇입니까?
- 7. 상속 된 클래스의 차이점을 처리하는 방법은 무엇입니까?
- 8. 스레드를 만드는 클래스의 여러 인스턴스를 인스턴스화하는 중 ... ...?
- 9. 상속 한 클래스의 오브젝트 작성 중?
- 10. 동적 수의 스레드를 만드는 방법은 무엇입니까?
- 11. 데이터로 부스터 스레드를 만드는 방법은 무엇입니까?
- 12. Win32 API로 스레드를 만드는 방법은 무엇입니까?
- 13. 각 클라이언트에 대해 새 스레드를 만드는 서버를 만드는 방법은 무엇입니까?
- 14. 내가 상속 한 클래스의 생성자를 어떻게 선언합니까?
- 15. IBlahblah에서 상속 한 모든 클래스의 컬렉션 만들기
- 16. Android, BroadcastReceiver에서 상속 한 클래스의 데이터를 저장하려고합니다.
- 17. 친구가 게시 한 스레드를 찾는 방법은 무엇입니까?
- 18. 상속 된 안드로이드 앱을 만드는 방법은 무엇입니까?
- 19. 상속 한 이유는 무엇입니까?
- 20. DynamicObject에서 상속 한 클래스에서 상속
- 21. 클래스의 스레드를 사용하여
- 22. 추상 클래스의 객체 배열을 만드는 방법은 무엇입니까?
- 23. XAML에서 클래스의 인스턴스를 만드는 방법은 무엇입니까?
- 24. 내부 클래스의 스프링 빈을 만드는 방법은 무엇입니까?
- 25. 클래스의 이름을 포함하는 문자열에서 클래스의 객체를 만드는 방법은 무엇입니까?
- 26. Grails 도메인 클래스의 상속
- 27. viewstate에 사전에서 상속 한 클래스의 인스턴스를 저장하는 방법은 무엇입니까? 웹 페이지에서
- 28. 스레드를 일시 중지/일시 중지 한 다음 계속하는 방법은 무엇입니까?
- 29. 스레드를 동기화하는 방법은 무엇입니까?
- 30. pthreads를 사용하여 클래스 멤버 함수를 클래스의 객체와 바인드하여 스레드를 만드는 방법은 무엇입니까?
어떻게 "실패"합니까? 빌드 오류? 런타임 에러? –
2 개의 QObject에서 다중 상속은 아니오입니다. 다중 상속에서 일반적인 조상/다이아몬드 문제의 예입니다. – hmn
@ joachim : Build error : 다음과 같은 오류가 발생합니다 : 오류 C2385 : 모호한 액세스 'connect' 1> 기본 'QObject' 1에서 '연결'일 수 있거나 'QObject' – joki