Exemples de programmes en vedette
Navigateur Web auto-construit Qt+C++ - construit sur le dernier noyau de Chrome Blink - version améliorée
Si vous devez installer l'environnement d'exploitation ou le débogage à distance, veuillez consulter votre carte de visite QQ personnelle au bas de l'article pour obtenir une assistance à distance par des techniciens professionnels !
Préface
Ce blog est écrit pour le <<navigateur Web auto-construit Qt+C++ - construit sur le dernier noyau de Chrome Blink - version améliorée>>. Le code est propre, régulier et facile à lire. Recommandé pour l'apprentissage et l'application.
Annuaire d'articles
1. Logiciel outil requis
2. Étapes d'utilisation
1. Importer la bibliothèque
2. Interface du formulaire
3. Résultats en cours d'exécution
3. Assistance en ligne
1. Logiciel outil requis
1. VS, Qt
2. Win10, Win11
2. Étapes d'utilisation
1. Importer la bibliothèque
Le code est le suivant (exemple) :
#include "QUrl"
#include <iostream>
#include<string>
#include<QKeyEvent>
#include<QFontDatabase>
#include<QWebEngineSettings>
#include<QWebEngineCookieStore>
2. Interface du formulaire
Le code est le suivant (exemple) :
QT_BEGIN_NAMESPACE
class Ui_MainWindowClass
{
public:
QAction *actionaa;
QWidget *centralWidget;
QGridLayout *gridLayout_3;
QFrame *frame_2;
QGridLayout *gridLayout_2;
QComboBox *comboBox;
QHBoxLayout *horizontalLayout;
QPushButton *pushButton_4;
QPushButton *pushButton_3;
QPushButton *pushButton_2;
QLineEdit *lineEdit;
QPushButton *pushButton;
QPushButton *pushButton_5;
QPushButton *pushButton_6;
QSpacerItem *horizontalSpacer;
QSpacerItem *horizontalSpacer_2;
QLabel *label;
QFrame *frame;
QGridLayout *gridLayout;
QWebEngineView *webEngineView;
QMenuBar *menuBar;
QToolBar *mainToolBar;
QStatusBar *statusBar;
void setupUi(QMainWindow *MainWindowClass)
{
if (MainWindowClass->objectName().isEmpty())
MainWindowClass->setObjectName(QString::fromUtf8("MainWindowClass"));
MainWindowClass->resize(716, 400);
actionaa = new QAction(MainWindowClass);
actionaa->setObjectName(QString::fromUtf8("actionaa"));
QIcon icon;
QString iconThemeName = QString::fromUtf8("dfds");
if (QIcon::hasThemeIcon(iconThemeName)) {
icon = QIcon::fromTheme(iconThemeName);
} else {
icon.addFile(QString::fromUtf8(":/MainWindow/png/\346\211\223\345\274\200\346\226\207\344\273\266\345\244\271-\347\272\242\350\211\262.png"), QSize(), QIcon::Normal, QIcon::Off);
}
actionaa->setIcon(icon);
centralWidget = new QWidget(MainWindowClass);
centralWidget->setObjectName(QString::fromUtf8("centralWidget"));
gridLayout_3 = new QGridLayout(centralWidget);
gridLayout_3->setSpacing(6);
gridLayout_3->setContentsMargins(11, 11, 11, 11);
gridLayout_3->setObjectName(QString::fromUtf8("gridLayout_3"));
frame_2 = new QFrame(centralWidget);
frame_2->setObjectName(QString::fromUtf8("frame_2"));
QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
sizePolicy.setHorizontalStretch(1);
sizePolicy.setVerticalStretch(0);
sizePolicy.setHeightForWidth(frame_2->sizePolicy().hasHeightForWidth());
frame_2->setSizePolicy(sizePolicy);
QFont font;
font.setFamily(QString::fromUtf8("3ds"));
font.setPointSize(16);
frame_2->setFont(font);
frame_2->setFrameShape(QFrame::Box);
frame_2->setFrameShadow(QFrame::Raised);
gridLayout_2 = new QGridLayout(frame_2);
gridLayout_2->setSpacing(6);
gridLayout_2->setContentsMargins(11, 11, 11, 11);
gridLayout_2->setObjectName(QString::fromUtf8("gridLayout_2"));
comboBox = new QComboBox(frame_2);
comboBox->addItem(QString());
comboBox->addItem(QString());
comboBox->addItem(QString());
comboBox->setObjectName(QString::fromUtf8("comboBox"));
QFont font1;
font1.setFamily(QString::fromUtf8("\345\276\256\350\275\257\351\233\205\351\273\221"));
font1.setPointSize(12);
comboBox->setFont(font1);
gridLayout_2->addWidget(comboBox, 0, 2, 1, 1);
horizontalLayout = new QHBoxLayout();
horizontalLayout->setSpacing(6);
horizontalLayout->setObjectName(QString::fromUtf8("horizontalLayout"));
pushButton_4 = new QPushButton(frame_2);
pushButton_4->setObjectName(QString::fromUtf8("pushButton_4"));
horizontalLayout->addWidget(pushButton_4);
pushButton_3 = new QPushButton(frame_2);
pushButton_3->setObjectName(QString::fromUtf8("pushButton_3"));
horizontalLayout->addWidget(pushButton_3);
pushButton_2 = new QPushButton(frame_2);
pushButton_2->setObjectName(QString::fromUtf8("pushButton_2"));
horizontalLayout->addWidget(pushButton_2);
lineEdit = new QLineEdit(frame_2);
lineEdit->setObjectName(QString::fromUtf8("lineEdit"));
QFont font2;
font2.setFamily(QString::fromUtf8("\345\276\256\350\275\257\351\233\205\351\273\221"));
lineEdit->setFont(font2);
horizontalLayout->addWidget(lineEdit);
pushButton = new QPushButton(frame_2);
pushButton->setObjectName(QString::fromUtf8("pushButton"));
QFont font3;
font3.setFamily(QString::fromUtf8("\345\276\256\350\275\257\351\233\205\351\273\221"));
font3.setPointSize(16);
pushButton->setFont(font3);
horizontalLayout->addWidget(pushButton);
pushButton_5 = new QPushButton(frame_2);
pushButton_5->setObjectName(QString::fromUtf8("pushButton_5"));
pushButton_5->setFont(font2);
horizontalLayout->addWidget(pushButton_5);
pushButton_6 = new QPushButton(frame_2);
pushButton_6->setObjectName(QString::fromUtf8("pushButton_6"));
pushButton_6->setFont(font2);
horizontalLayout->addWidget(pushButton_6);
horizontalSpacer = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
horizontalLayout->addItem(horizontalSpacer);
gridLayout_2->addLayout(horizontalLayout, 0, 0, 1, 1);
horizontalSpacer_2 = new QSpacerItem(40, 20, QSizePolicy::Expanding, QSizePolicy::Minimum);
gridLayout_2->addItem(horizontalSpacer_2, 0, 1, 1, 1);
label = new QLabel(frame_2);
label->setObjectName(QString::fromUtf8("label"));
label->setFont(font2);
gridLayout_2->addWidget(label, 0, 3, 1, 1);
gridLayout_3->addWidget(frame_2, 0, 0, 1, 1);
frame = new QFrame(centralWidget);
frame->setObjectName(QString::fromUtf8("frame"));
QSizePolicy sizePolicy1(QSizePolicy::Preferred, QSizePolicy::Preferred);
sizePolicy1.setHorizontalStretch(0);
sizePolicy1.setVerticalStretch(6);
sizePolicy1.setHeightForWidth(frame->sizePolicy().hasHeightForWidth());
frame->setSizePolicy(sizePolicy1);
frame->setFrameShape(QFrame::Box);
frame->setFrameShadow(QFrame::Raised);
gridLayout = new QGridLayout(frame);
gridLayout->setSpacing(5);
gridLayout->setContentsMargins(11, 11, 11, 11);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
gridLayout->setContentsMargins(0, 0, 0, 0);
webEngineView = new QWebEngineView(frame);
webEngineView->setObjectName(QString::fromUtf8("webEngineView"));
webEngineView->setUrl(QUrl(QString::fromUtf8("about:blank")));
gridLayout->addWidget(webEngineView, 0, 0, 1, 1);
gridLayout_3->addWidget(frame, 1, 0, 1, 1);
mainToolBar->addAction(actionaa);
mainToolBar->addSeparator();
retranslateUi(MainWindowClass);
QMetaObject::connectSlotsByName(MainWindowClass);
} // setupUi
void retranslateUi(QMainWindow *MainWindowClass)
{
MainWindowClass->setWindowTitle(QCoreApplication::translate("MainWindowClass", "MainWindow", nullptr));
actionaa->setText(QCoreApplication::translate("MainWindowClass", "aa", nullptr));
#if QT_CONFIG(shortcut)
actionaa->setShortcut(QCoreApplication::translate("MainWindowClass", "Ctrl+O", nullptr));
#endif // QT_CONFIG(shortcut)
comboBox->setItemText(0, QString());
comboBox->setItemText(1, QCoreApplication::translate("MainWindowClass", "www.baidu.com", nullptr));
comboBox->setItemText(2, QCoreApplication::translate("MainWindowClass", "www.csdn.net", nullptr));
};
namespace Ui {
class MainWindowClass: public Ui_MainWindowClass {};
} // namespace Ui
QT_END_NAMESPACE
#endif // UI_MAINWINDOW_H
3. Les résultats en cours sont les suivants
3. Assistance en ligne :
Si vous devez installer l'environnement d'exploitation ou le débogage à distance, veuillez consulter votre carte de visite QQ personnelle au bas de l'article pour obtenir une assistance à distance par des techniciens professionnels !
1) Installation et environnement d'exécution à distance, débogage du code
2) Guide d'entrée Qt, C++, Python
3) Embellissement de l'interface
4) Production de logiciels
Lien vers l'article actuel : https://blog.csdn.net/alicema1111/article/details/132666851
Articles recommandés par les blogueurs : reconnaissance faciale python comptant les personnes blog qt form-CSDN
Article recommandé par Blogger : Partage de code source de reconnaissance de fumée de flamme Python Yolov5-Blog CSDN
Page d'accueil du blog personnel : blog_CSDN d'Alicema1111-Python, C++, blogueur Web
Cliquez ici pour tous les articles du blogueur : https://blog.csdn.net/alicema1111?type=blog