一、獲取wifi列表
?
.h 文件內容
#include <QWidget>
#include <QVBoxLayout>
#include <QPushButton>
#include <QCheckBox>
#include <QListWidget>class Setting : public QWidget {Q_OBJECT
public:explicit Setting(QWidget *parent = nullptr);signals:
private slots:void scanWifiList();private:};#endif //WIFIUDPSCANTOTAL_SETTING_H
.cpp 文件
//
// Created by Administrator on 2025/5/20.
//
#include <QLineEdit>
#include <QLabel>
#include "include/setting/Setting.h"
#include "include/configManager/ConfigManager.h"
#include "include/wifiManager/wifiManager.h"
#include <QDebug>
#include <QMap>
#include <QJsonObject>
#include <QListWidget>
#include <QMessageBox>
#include <QProcess>#define COUT qDebug() << __FUNCTION__ << __LINE__void Setting::scanWifiList() {qInfo() << "開始掃描wifi列表...";wifiList->clear();QProcess process;process.start("netsh wlan show networks"); // 執行WiFi掃描命令:ml-citation{ref="1,4" data="citationList"}process.waitForFinished();QString output = QString::fromLocal8Bit(process.readAllStandardOutput());QStringList lines = output.split("\r\n");foreach (QString line, lines) {if (line.contains("SSID")) {QString ssid = line.split(":").last().trimmed();qInfo() << "wifi..name.."<< ssid;wifiList->addItem(ssid);}}COUT << "掃描結束,wifi數量:" << wifiList->count();COUT << wifiList;}
結果如下:
二、連接wifi
?
.h 文件