QMLモデル・ビュー構築入門
QMLにおけるモデル・ビュー構造の理解
Qtフレームワークの進化は著しく、QMLはその重要な構成要素として注目されています。QMLはもともとQt 4.7でモバイル開発向けに導入されましたが、現在ではデスクトップアプリケーション開発にも広く対応しています。
QMLは視覚表現とロジックの分離を実現し、HTMLとJavaScriptの関係に似ています。QtのC++ベースのMVCアーキテクチャ ...
7月18日 17:56 投稿
QMLアプリケーションにおけるWindowsシステム情報取得手法
QMLアプリケーション開発時に、システムのカラー情報やアイコンを取得する必要がある場合、Win32 APIを活用することで効率的に実装できます。
プロジェクト設定ファイルに必要なライブラリを追加します。
QT += svg gui
# Windows API設定
win32:LIBS += -lUser32 -lgdi32
# OpenCV設定
win32:CONFIG(release, debug|release): {
LIBS += -L$$PWD/opencv/lib -lopenc ...
7月5日 00:17 投稿
QMLで写真を自由に配置・操作するデスクトップビューア
Qt Widgets から Qt Quick/QML へ移行すると「UI をもっと気軽に作れるはずだが、複雑なインタラクションは Widgets の方が楽では?」と思いがちです。実際に触ってみると、そんな先入観は簡単に崩れます。本稿では、シンプルなコードで写真を並べ、ドラッグ/ピンチ/ホイールで拡大・縮小・回転できるデスクトップアプリケーション「PhotoSurface」を題材に、QML の実装 ...
6月24日 20:45 投稿
QMLとC++によるデータ分離アーキテクチャの実践 - QAbstractListModelを用いた動的リスト実装
データ分離アーキテクチャの概要
Qt5以降、QMLはデスクトップアプリケーション開発における第一級のUI構築技術として定着しました。本稿では、QMLが担当するプレゼンテーション層とC++が担当するデータ層を明確に分離する実装パターンを解説します。このアプローチにより、QMLは高速なレンダリングに専念し、データ管理やビジネスロジックはC++側で堅牢に実装できます。両 ...
6月20日 19:25 投稿
QMLを使用したマリンタワーディフェンスゲームの実装分析
1. ゲーム概要
この記事ではQtに付属するQMLデモゲーム「Maroon」の実装を分析します。海洋生物をテーマにしたタワーディフェンスゲームで、以下のような特徴があります:
4種類の防御タワー(海藻、星、タコ、カニ)
敵キャラクターは魚の入った泡
ゲーム進行に伴い難易度が上昇
2. 主要コンポーネント
2.1 基本構造
ゲームの主要コンポーネントは以下のように構成 ...
5月28日 02:03 投稿
QML コーディングにおける Q_PROPERTY 不足問題の解決策
Qt でクライアント向けのアノテーションクラスを実装する際、C++ の主要データを QML に公開するために Q_PROPERTY を多用すると、十数個しか使えないという制限に遭遇しました。
class ImageShow : public QQuickPaintedItem
{
Q_OBJECT
Q_PROPERTY(QJsonObject minio_source READ minio_source WRITE setMinio_source NOTIFY minio_sourceChanged)
Q_PROPER ...
5月15日 08:50 投稿