私はQStackedWidgetといくつかのQPushButtonボタンを持っています。ウィジェットの親ウィジェットはQMainWindowです。 QStackedWidgetの中にはQLineEditもあります。私がしたいのは単純です:テキストボックスを含むフォームを検証し、すべての場合、データを処理するカスタムクラスの関数を呼び出します。クラスのインスタンスはQMainWindowクラス内に作成されます。そのクラスのメソッドを呼び出す最良の方法は何でしょうか?カスタムクラスをQStackedWidget内のウィジェットのインスタンスに接続するQtのシグナル/スロットメカニズムを使用する必要がありますか?Qtを使って親ウィジェットの機能を呼び出す
1
A
答えて
3
QValidatorから必要な回数だけ派生させ、検証が必要な各フィールドにバリデーターをインストールすることができます。この方法では、フィールドが空であるか、有効なエントリが含まれていることが保証されます。
データを処理する前に、該当するフィールドにすべてデータが含まれていることを確認してから、有効なフォームがあることを保証してください。
フォームデータの一部のコンシューマにデータを渡す一般的な方法は、データを保持する中間マンクラスを作成することです。フォームの検証後にクラスのインスタンスが作成され、インスタンスがコンシューマに渡されます。このようにして、フォームに変更がある場合、消費者は同じデータが収集されている限り、これらの変更から隔離されます。
一般的な規則は、実装ではなく、オブジェクトインターフェイスに対して作業することです。
Sig/slotは通話の発注を保証するものではなく、本質的にこれを見ることができるということを意味します。オブジェクトはその信号に接続し、この変更を選択することができます。 は、サブコンポーネントによるフォームデータの処理順序が保証されている必要がある場合、メンテナンスプログラマーに混乱させるオプションを与えるのはなぜですか?
第2に、オブジェクトが存在するは、である必要はありません。データコンシューマが非常に複雑になり、シナリオ(ユーザーの個人情報や今日の日付、現在の気温など)に基づいて別のものをスナップしたい場合は、再アーチをしたい。コンシューマーにデータを取得するためのロジックが、フォーム内の特定の方法で存在するオブジェクトに大きく依存する場合、それは間違っています。
関連する問題
- 1. 親コンポーネントの機能を呼び出す
- 2. ReactJs親機能を呼び出す
- 3. JavaScriptの機能を使ってURLを呼び出す
- 4. Ckeditorウィジェットのアップキャスト機能内でAJAXコールを呼び出す
- 5. C++親の友人機能を呼び出す方法は?
- 6. Webユーザコントロールから親aspxページの機能を呼び出す
- 7. API呼び出しの追加機能とAndroidウィジェット
- 8. JavaScriptを使用してサーバー側の機能を呼び出す
- 9. ルータのミドルウェア機能を呼び出す
- 10. nodejs socket.ioを使用してcoddeigniterコントローラ機能を呼び出す
- 11. Qtウィジェットを作成して親ウィジェットにするには?
- 12. すぐに機能を呼び出す
- 13. 呼び出し機能
- 14. 呼び出し機能
- 15. パラメータを使用してパブリックメソッドを呼び出すjQueryUIウィジェット
- 16. SocialEngineでajaxを使用してウィジェットを呼び出す
- 17. luaでlove機能を呼び出す
- 18. jplでリスティング機能を呼び出す
- 19. qtウィジェットを更新する毎秒関数を呼び出す方法
- 20. 私は次のコードを使用して呼び出されたListViewウィジェット持っ
- 21. 拡張機能/アドオンの機能を呼び出す
- 22. サービス機能から別のサービス機能を呼び出す
- 23. jqueryの呼び出しを使用してWordpressのウィジェット
- 24. ラムダを使って特定の親コンストラクタを呼び出す方法は?
- 25. iframe内から親のノックアウト機能を呼び出しますか?
- 26. QT CreatorでC++を使用してPythonスクリプトを呼び出す
- 27. クリック機能を呼び出す機能に変換する
- 28. Qtで別のアプリケーションを呼び出す
- 29. ng-change機能からng-click機能を呼び出す
- 30. ハスケル - 機能を呼び出す関数を持っています
データを検証した後、これらのデータをカスタムクラスに渡す必要があります。この場合適切なシグナル/スロットシステムですか、それとも別のものを使用すべきですか? – Stefano
@Stefanoデータが検証されたポイントの後に、どの信号/スロットがこれと関係しているのか分かりません。しかし、あなたはそれをすることができます。すべてのフィールドに有効なデータがあるかどうかを調べて調べるには、信号/スロットが必要な場合があります。それはあなたのアーキテクチャに依存します。 –
基本的に、親QWidgetクラスの内部に独自のインスタンスを持つカスタムクラスメソッドに検証データを渡す最善の方法はありますか? – Stefano