Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Japanese
  4. 複数のオブジェクトから1つのSlotへの接続方法
QtWS25 Last Chance

複数のオブジェクトから1つのSlotへの接続方法

Scheduled Pinned Locked Moved Japanese
3 Posts 2 Posters 8.2k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    Shiho
    wrote on last edited by
    #1

    shihoです。
    いつもお世話になっています。

    現在、Qt Creator 2.4.1 でGUI 開発を行っています。

    QTextEdit を3個作成し、それぞれのオブジェクト名を1st, 2nd, 3rdとしています。

    QTextEditをマウスでクリックした際に、別ウィンドウを開く処理を作成したいと思っています。

    そこで、
    1st のselectionChanged() シグナル選択時、スロット名 setselectionChanged()、
    2nd のselectionChanged() シグナル選択時、スロット名 setselectionChanged()、
    3rd のselectionChanged() シグナル選択時、スロット名 setselectionChanged()

    とすべて同じスロットをコールたいのですが、
    setselectionChanged() 内で、どのオブジェクト(シグナル)から呼ばれたのかを判断する方法が
    わからず困っています。

    オブジェクトの読み出し方法などがあれば教えてください。

    以上、よろしくお願いします。

    1 Reply Last reply
    0
    • T Offline
      T Offline
      takumiasaki
      wrote on last edited by
      #2

      connect された SLOT が呼び出された場合、
      SIGNAL が発生したオブジェクトは [[Doc:QObject]] の sender() メソッドで取得できます。

      また、上記の場合は [[Doc:QSignalMapper]] を使うのも手でしょう。
      複数のオブジェクトのSIGNALをまとめて、idを付けた別のSIGNALを発行します。

      以下のドキュメントも参考にしてください。
      http://qt-project.org/doc/qt-4.8/signalsandslots.html#advanced-signals-and-slots-usage
      http://doc.trolltech.com/qq/qq10-signalmapper.html
      http://www.off-soft.net/ja/develop/qt/qt1-2-2.html

      1 Reply Last reply
      0
      • S Offline
        S Offline
        Shiho
        wrote on last edited by
        #3

        shihoです。

        早速の回答ありがとうございます。

        sender()メソッドを使用して、SIGNALのオブジェクトを取り出すことができました。

        今回は、sender()メソッドを使用しましたが、QSignalMapperを使用する方法も勉強として試してみたいと思います。

        いつもありがとうございます。

        1 Reply Last reply
        0

        • Login

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • Users
        • Groups
        • Search
        • Get Qt Extensions
        • Unsolved