teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

`で囲みました`

2020/07/21 12:02

投稿

tasuku.
tasuku.

スコア347

answer CHANGED
@@ -1,10 +1,10 @@
1
1
  Qt ではフォームの構築はコンストラクタ内で行う通常の処理で完了しています。
2
2
 
3
- QWidget::close() の挙動については [ドキュメント](https://doc.qt.io/qt-5/qwidget.html#close) に記載のある通り、Qt ではトップレベルの QWidget を close すると自動的にアプリケーションが終了するようなデフォルトの設定になっています。
3
+ `QWidget::close()` の挙動については [ドキュメント](https://doc.qt.io/qt-5/qwidget.html#close) に記載のある通り、Qt ではトップレベルの `QWidget``close()` すると自動的にアプリケーションが終了するようなデフォルトの設定になっています。
4
4
 
5
- 一般的には QWidget::show() を実行し、**Qt のイベントループが1サイクル経過した後のタイミング** が close() が実際に効くタイミングとなります。
5
+ 一般的には `QWidget::show()` を実行し、**Qt のイベントループが1サイクル経過した後のタイミング** が `close()` が実際に効くタイミングとなります。
6
6
 
7
- というわけで、コンストラクタの中(より正確にやるのであれば showEvent() の中)で以下のどちらかの方法で、イベントループ内で自身の close() が呼ばれるようにする必要があります。
7
+ というわけで、コンストラクタの中(より正確にやるのであれば `showEvent()` の中)で以下のどちらかの方法で、イベントループ内で自身の `close()` が呼ばれるようにする必要があります。
8
8
 
9
9
  ```c++
10
10
  // イベントループ内で実行されるタイマーを利用し0秒後に閉じる方法
@@ -16,7 +16,7 @@
16
16
  QMetaObject::invokeMethod(this, "close", Qt::QueuedConnection);
17
17
  ```
18
18
 
19
- 上記のサンプルコードでは QWidget::close() を呼び出していますが、ラムダ式や独自のスロットを指定することで任意の処理を実行することができます。
19
+ 上記のサンプルコードでは `QWidget::close()` を呼び出していますが、ラムダ式や独自のスロットを指定することで任意の処理を実行することができます。
20
20
 
21
21
  ```c++
22
22
  QTimer::singleShot(0, [this]() {