• 5782阅读
  • 8回复

[提问]请教:关于qt4中多线程的参数传递问题! [复制链接]

上一主题 下一主题
离线deeplyzpf
 

只看楼主 倒序阅读 楼主  发表于: 2011-09-13

我在主界面中新建了一个自定义的线程类(当然继承自QThread)并在成员函数中实例化了一个。现在的问题是我想实现把主线程的this指针传到新建的线程中,就像C++中的
    m_hThread = (HANDLE)_beginthreadex( NULL, 0, &ThreadFunc, this, 0, NULL );
请问在qt中如何实现这个this指针的传递呢?
本人玩qt就2个星期,实在很多不懂,请大家指教指教,感激不尽!
离线deeplyzpf

只看该作者 1楼 发表于: 2011-09-13
大哥大姐帮个忙啊,急用的!
离线deeplyzpf

只看该作者 2楼 发表于: 2011-09-13
为什么我的帖子没人回,别人刚发的一下子就有人回了呢?而且也没人进来看,怎么回事呢?
离线jianxin.jin
只看该作者 3楼 发表于: 2011-09-13
你在构造函数里把他传过去不行吗
离线dbzhang800

只看该作者 4楼 发表于: 2011-09-13
引用第2楼deeplyzpf于2011-09-13 14:02发表的  :
为什么我的帖子没人回,别人刚发的一下子就有人回了呢?而且也没人进来看,怎么回事呢? [表情]  

因为在别的地方看过这个帖子,而且也回复了。

题外:
你的问题和Qt没多大关系。建议先熟悉C++
离线deeplyzpf

只看该作者 5楼 发表于: 2011-09-13
谢谢您的回复!
能请问下该怎么写么?我的类代码如下
class MyThread : public QThread
{
      public:
          virtual void run();
};
怎么写构造函数呢?
我写的
    MyThread a((QObject)this);
    a.start();
然后在run里面
    Widget *p = (Widget *)this;
但是他说我的构造函数不对,请问是怎么回事呢?
离线deeplyzpf

只看该作者 6楼 发表于: 2011-09-13
谢谢您的提醒!
我发现了,好像真的是C++的问题。
我重新弄了如下:
class MyThread : public QThread
{
public:
    MyThread(Widget * aru)
    {
        m_p = aru;
    };
      public:
          virtual void run();
      private:
          Widget *m_p;
};
然后在run中直接跳用m_p,这样不知道有没有原则上的问题,可以这样用么,还请大哥大姐看看。
本人确实基础不牢靠,请多多指教!
离线deeplyzpf

只看该作者 7楼 发表于: 2011-09-13
4楼您好,可以请问下您在哪儿看到过这个问题么?可以的话,请发个链接吧,谢谢!
离线deeplyzpf

只看该作者 8楼 发表于: 2011-09-15
谢谢大家的回复,学习了!
关于分数的问题我不是很懂,待以后懂了补给大家吧,谢谢了!
快速回复
限100 字节
 
上一个 下一个