だから私は現在Qtアプリを書いていますが、かなり新しく、特定のものをどのように設計すべきかわかりません。コードを追加するにつれて、コードMainWindow.cpp
が大きくなり手に負えなくなります。コードを小さなファイルに分割する適切な方法は何か知りたいです。別のファイルに移動したい各コンポーネントは、UI に変更を加えています。私が現在行っていることは、文字通り新しい .cpp ファイルを作成し、MainWindow と MainWindow ui を含めることです。これは、独自のファイルに配置した関数の例です。
#include <QDebug>
#include <QString>
#include <QPalette>
#include "master_main_window.h"
#include "ui_master_main_window.h"
#include "cmd_net.h"
#include "cmd.h"
/*
* Send a command/data packet to the host
*/
void MasterMainWindow::sendCommand() {
// Disable some GUI components
ui->con_btn_cmd_disc->setEnabled(false);
ui->con_btn_cmd_rec->setEnabled(false);
ui->cmd_edit->setEnabled(false);
ui->cmd_btn_send->setEnabled(false);
// Send the packet through the open socket
sendCmdPacket(ui->cmd_edit->text().toLocal8Bit().data(), cmdSocket);
// Enable the socket notifier
cmdSockNotifier->setEnabled(true);
qDebug() << "Command sent:"
<< (ui->cmd_edit->text().toLocal8Bit().data())
<< "\nSent Packet";
}
ご覧のとおり、"master_main_window.h" と "ui_master_main_window.h" をインクルードしただけで、MainWindow クラスで使用できるさまざまな関数/変数/UI のすべてにアクセスできます。これを適切な方法で行っているのか、それとも関数を個別のファイルに分割するという目標を達成するためのより良い方法があるのか 、興味があります。