[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 2chのread.cgiへ]
Update time : 01/25 10:41 / Filesize : 218 KB / Number-of Response : 637
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【RAD統合環境】 Qt 総合スレ 5 【Win/Mac/Linux】



412 名前:403 mailto:sage [2009/10/28(水) 22:30:47 ]
>407
MainWindowとImageViewはフォームエディタで作成
MainWindow上にQGraphicsViewを格上げ
QGraphicsSceneを派生したPixmapSceneを自作
PixmapSceneはMainWindowにメンバ変数としてインスタンス生成
PixmapSceneを派生する際、QGraphicsSceneがご指摘のとおり、
QObjectを引数とするコンストラクタしかなかったため、PixmapSceneの
イベントハンドラからMainWindowのメンバ関数へどうやってアクセスしたら
良いのだろうと悩みました。

繰り返しになりますが、PixmapSceneのインスタンス生成は、MainWindowの
メンバ変数としておりますが、この際、
PixmapScene::PixmaScene(QObject* parent) : QGraphicsScene(parent){}
とコンストラクタを定義して、
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWindow),m_pixmapscene(this) { ... }
PixmapSceneにMainWindowのポインタを渡しておき、PixmapScene::mousePressEventQGraphicsSceneMouseEvent* mouseEvent)
{
MainWindow* mainwindow = qobject_cast<MainWindow*>(parent());
qDebug() << mainwindow;
if (mainwindow != 0)
{
mainwindow->setPointToStatusBar(mouseEvent->scenePos().x(), mouseEvent->scenePos().y());
}
}
MainWindowのメンバ関数にアクセスすることができました。
どうもありがとうございました。
(長々と説明が下手ですいません。)
>>286のように、グローバルなアプリのポインタ使った方がスマートかなと思ったり。。。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<218KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef