Qtの武道攻略の開発経験

まず、レッスンの開発が学びました

  1. コンパイラは初見、解決するための一つ一つから始めて、大量のエラーを見つけたとき、多くの場合、エラーの後ろに、次のエラーを確認するために急いではありません。最初のソリューションが持っている可能性がある後に発生する以前のエラーに起因するものです解決しました。

  2. タイマーは、良いことです予期しない問題を解決することができますQTimer :: SINGLESHOTで、時には、それをうまく使用することを学びます。

  3. オープンクリエイター、コンストラクション・キットMAKEFLAGS = -j8環境の増加は、あなたがマルチスレッドコンパイル時間を設定することはできません。時間と人生を大切に。デフォルトではQtCreatorのJ8の新しいバージョンを持っていることです。

  4. あなたが成功しQtCreatorでAndroidのプログラムを展開する場合、まず、あなたはピットレベル内のすべての回を成功裏AndroidStudioを設定する必要があります。

  5. Qtは、関数のオーバーロードで複数のパラメータを見て覚えて、多くの時間を見つけるために、パッケージに対応する方法、あなたは別の世界を見つけるだろう、時々突然Qtは私たちに良いパッケージを助けたことに気づきました。

  6. Proファイルはバージョン番号+ ICOアイコンの上にマーカーで書き込むことができます(Qt5がサポートされています)
VERSION     = 2018.7.25
RC_ICONS    = main0.ico
  1. MSVCコンパイラで定義されたプログラムを実行するには、管理者。
QMAKE_LFLAGS += /MANIFESTUAC:\"level=\'requireAdministrator\' uiAccess=\'false\'\" #以管理员运行
QMAKE_LFLAGS += /SUBSYSTEM:WINDOWS,\"5.01\" #VS2013 在XP运行
  1. デバッグ出力ウィンドウでファイルを実行し
    CONFIG + =のコンソールプロ

  2. タイル張りの背景QPainterのを描画すると、:: drawTiledPixmap
    代わりにQPainterのの丸い四角形QPainterの:: drawRoundedRectを()、ドロー:: drawRoundRect()メソッド。

  3. 古いスタイルを削除します
//移除原有样式
style()->unpolish(ui->btn);
//重新设置新的该控件的样式。
style()->polish(ui->btn);
  1. プロパティクラスを取得
const QMetaObject *metaobject = object->metaObject();
int count = metaobject->propertyCount();
for (int i = 0; i < count; ++i) {
    QMetaProperty metaproperty = metaobject->property(i);
    const char *name = metaproperty.name();
    QVariant value = object->property(name);
    qDebug() << name << value;
}
  1. Qtの組み込みのQStyleにカプセル化されたアイコン、おそらく70個の以上のアイコンを直接使用することができます。
    QStyle :: SP_TitleBarMenuButton

  2. オペレーティングシステムがロードされたビットの数を決定します
win32 {
    contains(DEFINES, WIN64) { DESTDIR = $${PWD}/../../bin64
    } else { DESTDIR = $${PWD}/../../bin32 }
}
  1. 、ジオメトリを設定し、レイアウトを添加した後に見られるようにコントロールを移動することができません:setGeometryが表示された場合Qt5はずっと、セキュリティ検証を強化します。

  2. コントロールがレイアウトに追加され、コントロールのレイアウトを大幅に対照組成物の柔軟性を向上させるBを設定してもよい、右の検索ボタンとして左テキストボックス、ボタンアイコンが設けられているように添加してもよいです。
QPushButton *btn = new QPushButton;
btn->resize(30, ui->lineEdit->height());
QHBoxLayout *layout = new QHBoxLayout(ui->lineEdit);
layout->setMargin(0);
layout->addStretch();
layout->addWidget(btn);
  1. QLCDNumberコントロールのスタイルを設定し、あなたはQLCDNumberが平らであるsegmentstyleを設定する必要があります。

  2. 賢い利用findChildrenは、コントロールのすべての子コントロールを見つけることができます。シングルを探すためにfindChild。
//查找指定类名objectName的控件
QList<QWidget *> widgets = parentWidget.findChildren<QWidget *>("widgetname");
//查找所有QPushButton
QList<QPushButton *> allPButtons = parentWidget.findChildren<QPushButton *>();
//查找一级子控件,不然会一直遍历所有子控件
QList<QPushButton *> childButtons = parentWidget.findChildren<QPushButton *>(QString(), Qt::FindDirectChildrenOnly);
  1. 賢い使用は、特定のクラスが継承するかどうかを決定します。
QTimer *timer = new QTimer;         // QTimer inherits QObject
timer->inherits("QTimer");          // returns true
timer->inherits("QObject");         // returns true
timer->inherits("QAbstractButton"); // returns false
  1. 弱性機構は、送達のために決定され、一時的な値を格納することができます。

  2. 開発では、両方のメンテナンスを容易にするため、またはメモリリソースを節約検討し、我々はすべてのスタイルシートを格納するためのQSSファイルを持っている必要があり、どこにでも書かsetStyleSheetすべきではありません。

  3. Zオーダーの割り当てが表示された場合:「有効なウィジェットのエラーメッセージではありません、見つかった対応するUIファイルを開くには、メモ帳を使用します。 場所は、それを削除し、空です。

  4. 第2のユーザデータパラメータのQComboBoxのaddItem良い使用、多くの効果を取り出しITEMDATAを用いて達成することができます。

  5. webengineモジュールの場合、パブリッシャベルトQtWebEngineProcess.exe +翻訳フォルダ+ resourcesフォルダ。

  6. a.setAttribute(Qtの:: AA_NativeWindows)は、各コントロールは別のハンドルを有することができます。

  7. Qtの+ Androidのは、プログラムが閉じられている防ぎます。
#if defined(Q_OS_ANDROID)
QAndroidService a(argc, argv);
return a.exec()
#else
QApplication a(argc, argv);
return a.exec();
#endif
  1. 全体的なスタイルのインジケータ、例えば上に提供されてもよい下向き矢印矢印、 - :: ::} {MENUインジケータ:不可、::アップ矢印矢印 ::アップ矢印矢印:OFF {}。

  2. 背景画像の位置を設定を行うことができます。
QMainWindow > .QWidget {
    background-color: gainsboro;
    background-image: url(:/images/pagefold.png);
    background-position: top right;
    background-repeat: no-repeat
}
  1. 書かれたQt4をQtの組み込みLinuxのプログラムを実行します:./ HelloQt -qws&Qt5言葉遣い:./ HelloQt --platform XCB

  2. C:Qtcreatorのソフトウェアコンフィギュレーションファイルが保存されているに\ユーザーは、我々は自動的に再生成クリエーターを開くには、このフォルダーを削除した後、問題を見つけ、時には場合は、管理者\のAppData \ローミング\ QtProjectを\します。

  3. QMediaPlayer依存ローカルデコーダは、ダウンロードK-LITE又はLAVフィルタは、WINに取り付けられています。

  4. コード判断MSVCコンパイラのバージョン、もし(_MSC_VERの== 1800)、2013年= 18002012 = 17002010 = 16002008 = 15002005 = 1400との間の対応

  5. プロで異なるプラットフォームの分析:メッセージ($$ QT_ARCHは)(QT_ARCH、腕)が含まれています。

  6. Qtは仮死インタフェースを凍結後の回復、プラスコードを最小限に抑えます
void showEvent(QShowEvent *e){
setAttribute(Qt::WA_Mapped);
QWidget::showEvent(e);
}
  1. タイトルバーの高さを取得:スタイル() - > pixelMetric(QStyle :: PM_TitleBarHeight);あなたの内側PM_TitleBarHeightポイントは、新世界を見つけることができます。

  2. 特に携帯電話のアプリで、2K4Kの高解像度をサポートするために、ハイスコア画面やその他のプロパティを設定します。それはQApplicationメイン関数(ARGC、ARGV)で記述する必要があり、以前に。
#if (QT_VERSION > QT_VERSION_CHECK(5,6,0))
    QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
#endif
  1. あなたがプログラムを実行するとフォールトトレラントヒープシムは、現在のプロセスに適用され表示されます 。これが原因前回のクラッシュに通常である。 エラーが発生しました。
    ウェイ:HKEY_LOCAL_MACHINE \ SOFTWARE \マイクロソフト\ Windows NTの発見、レジストリを開き 、\ CurrentVersionの\ AppCompatFlags \レイヤー、 選択レイヤーのキーは、右側のリストからプログラムに独自のパスを削除します。

  2. Qtは自動的にラベル+入力ボックスを生成するためのインタフェースを組み合わせるためのフォームQFormLayoutフォームレイアウトを構築しました。

  3. QMLのLinuxでビデオを再生apt-getをlibpulse-devのインストールsudoをインストールする必要があります。

  4. カスタムQueryModel、QVariant CustomSqlModel ::データを書き換える他のスタイルのように、このようなフォントの色、プレースホルダとして列、(constのQModelIndex&インデックス、int型の役割)のconstを実装QSqlQueryModel直接継承することができます。

  5. Qt5は、スクロール制御にQScroller直接クラスを提供した後。
ui->listWidget->setHorizontalScrollMode(QListWidget::ScrollPerPixel);
QScroller::grabGesture(ui->listWidget,QScroller::LeftMouseButtonGesture);
  1. データベース・ファイルを生成するためにSQLiteデータベースを使用したくない場合は、インメモリデータベースを作成することができます。
QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");
db.setDatabaseName(":memory:");
  1. データテーブルをクリアしてインクリメントID、SQL =切り捨てテーブルtable_nameをリセットします。

  2. Qtchart最小モジュールの要件Qt5.4。

  3. QPushButtonは左揃えのQPushButton設定するテキスト、スタイルシート{テキスト整列:左;}

  4. 犬のこの部分が更新される^ _ ^真ん中の部分を食べて疑わない、それが継続的に更新されます。また、記事の最下部にウェルカムメッセージが追加されました。

  5. 中国のゴミ問題Qtのコミュニティ、発生する問題の出版社をパッケージ化する方法、インストールパッケージの問題を選択する方法の多くのバージョンは、三の大山脈のQtのコミュニティと呼ばれます!

  6. Qtの、給与20K出発読み取りが完了すると、下のインストールディレクトリの例の一例。

  7. なぜならどちらかのクロスボーダーまたは初期化されていない、Sikouの崩壊のすべてのこれら2点の80%は、問題の80%が解決されます。

  8. 私は一般的にQt4版4.8.7は、そのような最高の新バージョン5.12.3のように、最終的なサポートXPのバージョン5.7.0、長期サポートの最新バージョン5.9.8との互換性のために、4つのバージョンを禁じます。

  9. 究極攻略:あなたはJAVAのC#のキーワードのアンドロイドで起動してみ、問題のQt検索​​用語に遭遇する答えを見つけることができない場合は、地球上の楽園を見つけるだろう、他の人はおそらくやりました!

  10. 最後のものは:離れて、プログラミングから、命を大切に。私はあなたのすべての太い毛、良い睡眠、感情的な安定性、経済的自由を望みます!

第二に、フォーラムはQtの+ +個人のブログサイトを推奨しました

名前 サイト
qtcn http://www.qtcn.org
宇宙豆 https://www.devbean.net
yafeilinux http://www.qter.org
どこへ行く2または3マイル http://blog.csdn.net/liang19890820
UTOPIA 2号 http://blog.csdn.net/taiyang1987912
foruok http://blog.csdn.net/foruok
ジェイソン http://blog.csdn.net/wsj18808050
10泊8に向かいました http://www.cnblogs.com/swarmbees
BIG_C_GOD http://blog.csdn.net/big_c_god
公共孙二狗 https://qtdebug.com/qtbook
アマダの弟 https://blog.csdn.net/ly305750665
鄭Tianzuo https://blog.csdn.net/zhengtianzuo06
コールドマウンテン - レイ https://blog.csdn.net/esonpo
feiyangqingyun https://blog.csdn.net/feiyangqingyun
前列の豚 http://blog.csdn.net/goforwardtostep
列はほとんどTaogeを知っています https://zhuanlan.zhihu.com/TaoQt
Qtの外国人ビデオチュートリアル http://space.bilibili.com/2592237/#!/index
Qtの補足文書のwiki https://wiki.qt.io/Main
サイトを閲覧するにはQtのソースコード https://code.woboq.org/qt5

第三に、公共のマイクロチャンネル数

スキルを書くようこそ懸念公共マイクロチャネル番号] [効率的なプログラマー、コンテンツC ++ / Pythonの、学習、人気の高い技術、キャリア開発、乾燥品の多くは、多くの利益をもたらします!

おすすめ

転載: www.cnblogs.com/feiyangqingyun/p/10962456.html