本文へスキップします。

本文へ

【全Qt】
【全・Qt】SRAロゴ
H1

トレーニング

アンケート

SRAでは、20年以上の豊富な経験とノウハウを持つQtのプロフェッショナルエンジニアを講師としたトレーニングを定期的に開催しています。

最大6名の少人数で、QtによるGUIプログラミングの基礎から応用までを、マシンを使って実際に体験しながら、
学んでいただけます。

※ 現在、2つのトレーニングをオンライン(Zoom)で定期開催しています。
これまではご参加が難しかった遠方のお客様も含め、是非ご活用いただけますと幸いです。

開催内容

実施場所 SRAグループ池袋オフィス

SRAグループ池袋オフィス地図

※ オンライン(Zoom)にて開催

講習時間 毎日 10:00 ~ 18:00
定員 6 名様 (最小実施人数 4 名様より)
目的
「基礎コース」と「応用コース」は、主にデスクトッププラットフォームでウィジェットを使った従来のユーザーインターフェース開発に適しています。 「Qt Quickコース」は、組み込み機器プラットフォームで Qt Quick を使ったアニメーションやタッチ操作による最新のユーザーインターフェース開発に適しています。
  1. 基礎コースでは、Qt のフレームワーク、ツール、プログラミング技術の総合的な理解。
  2. 応用コースでは、基礎コースよりも高度で実践的な技術の理解。
  3. Qt Quickコースでは、Qt を初めて使う方を対象として、QML および QML と C++ のインテグレーション技術の理解。
対象者
  1. 開発プラットフォームについて、OS の基本操作に習熟されている方。
  2. いずれのコースも C++ の基本的な知識をお持ちの方。
  3. 応用コースは、基礎コースの内容の理解およびネットワークとスレッドプログラミングの基礎的な理解を前提としています。
  4. Qt Quickコースは、C++ と JavaScript の基本的な知識をお持ちの方。
Qt バージョン
  1. 基礎コースと応用コース
    Qt 5.15 または Qt 6.4 以降が対象バージョンです。オンサイトでは Qt 4.8 での実施も可能です。Qt Creator など任意の IDE またはエディターと端末アプリケーションをご用意ください。Visual Studio の場合には、Qt 用 Visual Studio Tools をインストールしてください。端末アプリケーションの場合には、コンパイラーと Qt のツールがコマンドラインから使えるように設定してください。
  2. Qt Quickコース
    Qt 5.15 または Qt 6.4 以降が対象バージョンです。Qt Creator 10 以降が必要です。

※ノート PC に使用される Qt のバージョンの開発環境と Qt のソースコード (講習中に Qt のソースコードを参照して説明します)、こちらで用意する教材を事前にインストールしてお持ちください。

※詳細は、お申し込み後にお送りする確認メールでご案内します。

申し込みはこちら

コース内容

コース 日数 受講料 (税込)
SRA オリジナルトレーニング 基礎コース 3 日間 198,000.- 円
SRA オリジナルトレーニング 応用コース 3 日間 198,000.- 円
SRA オリジナルトレーニング Qt Quickコース 3 日間 198,000.- 円
カスタムトレーニング※ - お問い合わせください

※オンサイトのトレーニングでは、ご要望に応じて、トレーニング内容をカスタマイズできる他に QtTest、Graphics View なども選択できます。

SRA オリジナルトレーニング 基礎コース

基本機能
UI とクロスプラットフォームライブラリー
Qt による「Hello World」
Qt オブジェクト
QObject メタオブジェクトシステム スマートポインター メタタイプ QVariant プロパティーシステム 親子関係 オブジェクトの生成
初めての Qt アプリケーション
ジオメトリーマネージメント入門 C++ に関する必要な知識 Qt Assistant と Qt Creator のヘルプ qmake コンポーネントとインクルードファイル 実習:初めての Qt アプリケーション
ユーザー操作とアプリケーション機能の結合
シグナルとスロット 文字列ベース接続とファンクターベース接続 シグナルとスロットの詳細 ラムダ式による接続 moc が生成したファイルの把握 実習:色選択ダイアログとシグナル/スロットの接続
Qt の機能の要約
Qt ソースコード構成 モジュールとクラスの概要
描画プログラムの作成
イベント処理
低レベルイベント シグナル/スロットと仮想メソッドの比較 シグナルとイベントの違い
描画の基本
ダブルバッファリング update() と repaint() の動作 QPixmap と QImage の比較 QPainter と paintEvent()
メインウィンドウフレームワーク
メインウィンドウ アクション ファイル操作:QFile、QTextStream、QDataStream テキストエンコーディングと SVG 印刷の基本 印刷 印刷プレビュー スクロール領域 サンプル:段階的なペイントプログラムの作成
ウィジェット
ジオメトリーマネージメント
サイズの指定方法 QHBoxLayout と QVBoxLayout、QGridLayout QFormLayout と QStackedLayout レイアウト用語の説明 サイズヒント、最小サイズヒント、 ストレッチ、マージン、スペーシング、 ストラット、サイズポリシー 実習:ストレッチとサイズポリシーを使ったレイアウト
既存のダイアログ
QFileDialog、QColorDialog、QInputDialog、 QFontDialog、QMessageBox、QProgressDialog、 QErrorMessage
独自のダイアログ
ダイアログの機能と構成 ボタン配置 モーダリティ モーダル、モードレス、 アプリケーション/ウィンドウモーダル ダイアログの終了とメモリー解放
グラフィカルな UI 作成
Qt Designer/Qt Creator による UI フォーム編集 ウィジェットボックス、オブジェクトインスペクター、プロパティーエディター レイアウト、スペーサー、objectName とプロパティーの設定 生成コードの使用方法 ダイレクト、プライベート継承、デリゲート 多重継承と UI クラスのポインターメンバーによる集約 フォーム内ウィジェットのシグナル/スロット接続 実習:RGB スライダーで背景色を変更する ColorWidget 独自クラスを扱う方法 ウィジェットの格上げとカスタムウィジェットプラグインの概要
独自ウィジェットの作成
独自ウィジェットの作成手順 描画、イベント処理、プロパティーとシグナルの設計 実習:コンパスウィジェットの実装
テキスト処理
QString
QString のテキスト処理 QStringList の文字列処理
URL:QUrl
正規表現:QRegularExpression
入力値のチェック
QLineEdit の入力マスク QValidator を使った入力チェック QCompleter を使った補完入力
イベントシステム
合成イベント
イベントのポストと送信 独自イベントとイベントの所有権
遅延呼出し:QTimer::singleShot()
ヘルプイベント
イベントフィルター
個別ウィジェットとアプリケーション全体への適用 実習:グローバルイベントフィルターへの書き換え
周辺機能
リソース
データファイルの実行形式への埋め込み リソースの扱い方 動的リソース 実習:ペイントプログラムのリソース組み込み
コンテナクラス
コンテナクラスの概要 コンテナクラス内アイテムの必要条件 イテレーター 暗黙の共有クラスの詳細 実習:コンテナ内オブジェクトの生成・コピー・破棄の確認
Qt のデバッグ機能
ログ出力、アサーション、オブジェクト情報の確認
移植性についての考察
プラットフォーム依存への対処、qmake/CMake、64 ビット対応
タイマー:QTimer
サンプル:ストップウォッチ
国際化
アプリケーションの国際化
tr()、翻訳対象文字列、翻訳者向け注釈
ローカライゼーション
Qt Linguist、lupdate、lrelease、QTranslator 実習:ペイントプログラムの翻訳
実行中の言語切り替え
コーデック
Unicode とテキストエンコーディング、Qt 5/Qt 6 での扱い
翻訳フォーマット

申し込みはこちら


SRA オリジナルトレーニング 応用コース

システムリソース
QImage
QImage クラス QImage の機能 QImage の使用方法 ピクセルフォーマット、ピクセル操作、画像変換、透明度とマスク Qt のイメージスタック 独自イメージのサポート イメージリーダーとイメージライター イメージ I/O ハンドラー イメージプラグイン 実習:SimpleImage フォーマットのイメージハンドラーとプラグインの作成
QSettings
アプリケーション設定情報の保存と読込 キー管理、グループ、検索パス、非コア型の読み書き マルチスレッドとマルチプロセスでの使い方
システムクリップボード
クリップボードのデータフォーマット QClipboard と QMimeData
ドラッグ&ドロップ
ドラッグ&ドロップの実装手順 独自データの転送 ドロップ時の動的データ受け渡し 実習:Gizmo ウィジェットのドラッグ&ドロップと独自 MIME データ転送
ネットワークプログラミング
TCP ソケット TCP クライアント (非ブロッキング) TCP クライアント (ブロッキング) TCP サーバー (非ブロッキング) TCP サーバー (ブロッキング) ローカル TCP サーバー UDP 接続 ホスト名解決 ネットワークインターフェース プロクシー ソケットのエラー処理 実習:TCP サーバーの実装
QProcess による外部プロセスの扱い
外部プロセスの実行方法 外部プロセスとの入出力 外部プロセスの制御 外部プロセスとの同期
ウィジェット
モデル/ビュー
簡易ウィジェット リストウィジェット テーブルウィジェット ツリーウィジェット アイテム ヘッダー セレクションとキーボードフォーカス ソート イベント モデル/ビューの理解 モデルクラス モデルインデックス リストモデル テーブルモデル ツリーモデル アイテムロール 独自モデルの作成 独自テーブルモデル 独自ツリーモデル データと構造の変更通知、モデルのリセット 実習:テーブル/ツリーによるオブジェクトブラウザーの実装 QStandardItemModel、QStringListModel、QRangeModel(Qt 6.10 以降) プロクシーモデル 実習:コンボボックスのモデルと ModelFlip の改善 ビュー QDataWidgetMapper デリゲート QStyledItemDelegate による描画と編集、実習:デリゲートの改善 セレクション ドラッグ&ドロップ リスト/テーブル/ツリーのドラッグ&ドロップ
描画処理の詳細
色の構成 QColor と QRgb 透明度 不定形ウィンドウ 半透明ウィンドウ カラーグループとパレット (QPalette) ペン (QPen) ブラシ (QBrush) 縁の扱い ダブルバッファリングとバッキングストアー クリッピング ペインターパス (QPainterPath) アンチエイリアス ラバーバンド 二次元変換 射影変換 ウィンドウ変換 ビューポート変換 実習:デカルト座標系での画像とテキスト表示
ウィジェットのスタイル
ウィジェットのスタイルの使用方法 スタイル機能の分離 独自スタイルの実装方法 QStyle、QCommonStyle、QProxyStyle styleHint() drawControl() QStyleOption QStyleOption のサブクラス drawPrimitive() drawComplexControl() pixelMetric() polish()
スタイルシート
スタイルシートの適用 CSS ルール ボックスモデル セレクター 擬似状態 副制御部品 ルールの優先順位と矛盾の解消 Qt Designer との統合、実習:スタイルシートの変更
マルチスレッド
マルチスレッド I:基本機能
QThread 並列処理の考え方、リエントラントとスレッドセーフ スレッドの開始・待機・終了 QThreadPool、QRunnable QObject のスレッド対応とイベント処理 ミューテックス:QMutex、QRecursiveMutex、QMutexLocker スレッドアフィニティー サブスレッドのイベントループ スレッドアフィニティーの変更 スレッド間のシグナル/スロット 実習:QObject::moveToThread() を使った処理の分離 リード/ライトロック、ウェイトコンディション
マルチスレッド II:簡易並列化機能
QtConcurrent、QFuture、QFutureWatcher map/filter/reduce、ブロッキング処理と非同期処理 進行状況の監視と例外処理、QtConcurrent::run() 実習:逐次処理の並列化と非同期化、実行時間の比較
マルチスレッド III:周辺機能
スレッドローカルデータ:QThreadStorage QSemaphore と QSystemSemaphore、ミューテックスとの比較 アトミック操作、メモリーフェンス、メモリー順序 QAtomicInt、QAtomicPointer、機能判断マクロ

申し込みはこちら

選択カリキュラム (オンサイトとカスタムトレーニングのみ)

Graphics View
概要
基本的な使い方
既存の QGraphicsItem
変換
イベント処理
シーンへのウィジェットの埋込み
Map Viewer 演習
ドラッグアンドドロップ
アニメーション
衝突検出
性能
ゲーム作成演習
QtTest
単純なテストの作成
データ駆動テスト
GUI テスト
データ駆動 GUI テスト
QSignalSpy
ベンチマーク
演習: Compass ウィジェットのテスト

申し込みはこちら

SRA オリジナルトレーニング Qt Quickコース

Qt Quick 基礎
Qt と開発環境の基礎
Qt の概要、歴史、ライセンスモデル Hello World、qmake とプロジェクト構成 Qt Creator によるプロジェクト作成、編集、デバッグ Qt Assistant と Qt Creator のヘルプ、モジュールとクラスの概要
Qt Quick/QML 入門
QML の基本構文、タイプ、id、オブジェクトの親子関係 プロパティー、プロパティーバインディング、式とメソッド JavaScript と QML の基本タイプ
ユーザーインターフェースの作成
タイプの入れ子とグラフィカルタイプ Rectangle、色、画像、拡大縮小、回転、グラデーション、BorderImage Text と TextInput アンカーによる配置とアラインメント
独自タイプとコンポーネント
QML コンポーネントによる UI の再利用 カスタムプロパティーと alias カスタムシグナル、シグナルハンドラー、プロパティー変更通知 モジュール、import、qmldir、バージョンと名前空間
Qt Quick Controls 2
汎用 UI コンポーネント、スタイル、レイアウト Qt Quick Controls 1 と 2 の違い、長所と短所
Qt Quick アプリケーションと Qt C++ バックエンド
Qt Creator による Qt Quick アプリケーションの作成 QObject、オブジェクトの親子関係とメモリー管理 QVariant、メタタイプ、プロパティーシステムと Q_PROPERTY シグナル/スロット、メンバー関数・非メンバー関数・ラムダ式の接続 Q_OBJECT と moc、イベント処理、シグナルとイベントの違い リソースの定義、QML からの利用、動的リソース
QML と C++ の統合
QQuickView、QQmlApplicationEngine、Window QML タイプ コンテキストプロパティーと C++ オブジェクトの公開 C++ クラスの QML タイプ登録とインポート C++ プロパティー、変更通知シグナル、スロット、Q_INVOKABLE QML と C++ 間のシグナル接続、列挙型と独自プロパティータイプ QQmlListProperty によるコレクション型とリストプロパティー QQuickPaintedItem による QPainter ベースの独自描画 QQuickItem とシーングラフによる独自描画
アニメーション
NumberAnimation、PropertyAnimation、Behavior イージング曲線、SpringAnimation SequentialAnimation、PauseAnimation、ParallelAnimation 色、回転、経路のアニメーション
状態と遷移
State、PropertyChanges、条件による状態の切り替え Transition とアニメーション ParentAnimation、AnchorAnimation シグナルハンドラーとアニメーション
データの整列と装飾
ポジショナー、Qt Quick Layouts、Repeater Component とコンポーネントスコープ ListModel、ObjectModel、モデルの動的な変更 ListView、GridView、PathView とデリゲート ヘッダー、フッター、ハイライト、現在のアイテム、セクション XmlListModel と Qt 5/Qt 6 での違い ビューの配置、ハイライト範囲とスクロールの制御
Qt 6 での変更点(Qt Quick 関連)
QML 言語仕様、import と型登録、C++ API の変更 RHI と Direct3D/Metal/Vulkan 対応の概要 Qt Quick 関連モジュールの変更とコンパイルによる高速化の概要
総合実習:FruitStore アプリケーション
Qt Quick アプリケーションと Fruit クラスの作成 C++ の独自タイプ登録と QML からの利用 プロパティーを参照した表示の作成 QQmlListProperty を持つ FruitStore クラスの作成 ListView による一覧表示、デリゲートとハイライト キーボードによるアイテム選択と値の変更 発展課題:表示のコンポーネント化
補助教材:C++ 基礎
参照、auto、nullptr、関数のオーバーロード、ラムダ式、new/delete クラス、コンストラクターとデストラクター、継承、仮想関数 標準ライブラリー、コンテナ、イテレーター、スマートポインター 関数テンプレートとクラステンプレート

申し込み

開催スケジュール

SRA オリジナルトレーニング 基礎コース 2025年 12月11日(木),18日(木),25日(木) ※Zoomにてオンライン開催 終了
2026年 2月19日(木),26日(木),3月3日(火) ※Zoomにてオンライン開催 終了
2026年 4月9日(木),16日(木),23日(木) ※Zoomにてオンライン開催 終了
2026年 6月11日(木),18日(木),25日(木) ※Zoomにてオンライン開催 終了
2026年 8月6日(木),20日(木),27日(木) ※Zoomにてオンライン開催 終了
2026年 10月8日(木),15日(木),22日(木) ※Zoomにてオンライン開催 終了
2026年 12月10日(木),17日(木),24日(木) ※Zoomにてオンライン開催
2027年 2月4日(木),18日(木),25日(木) ※Zoomにてオンライン開催
SRA オリジナルトレーニング Qt Quickコース 2026年 1月13日(水)~1月15日(金) ※Zoomにてオンライン開催 終了
2026年 3月11日(水)~3月13日(金) ※Zoomにてオンライン開催 終了
2026年 5月20日(水)~5月22日(金) ※Zoomにてオンライン開催 終了
2026年 7月15日(水)~7月17日(金) ※Zoomにてオンライン開催 終了
2026年 9月16日(水)~9月18日(金) ※Zoomにてオンライン開催 終了
2026年 11月18日(水)~11月20日(金) ※Zoomにてオンライン開催
2027年 1月20日(水)~1月22日(金) ※Zoomにてオンライン開催
2027年 3月10日(水)~3月12日(金) ※Zoomにてオンライン開催
SRA オリジナルトレーニング 応用コース ※個別開催にて実施させていただきます。是非ご相談ください。

コース内容の詳細は、各トレーニングコース内容をご覧ください。
トレーニングコース内容へ

ご要望に応じて、上記スケジュール以外のオンサイトでのトレーニングも可能です。定員になり次第締め切らせていただきますのでお早めにお申し込みください。


トレーニング申し込みフォーム

※は記入必須項目です。

共通情報
 ※
SRA オリジナルトレーニング 基礎コースを受講される場合は希望する日程を選択してください。※他のコースを受講される場合は「受講するコースを選択してください」のままでお願いします。
 ※
SRA オリジナルトレーニング Qt Quickコースを受講される場合は希望する日程を選択してください。※他のコースを受講される場合は「受講するコースを選択してください」のままでお願いします。
 ※
 ※
 

例)000-0000

 
 
 
 ※
 ※
 ※
例:03-1234-5678(ハイフンあり)
 ※
 ※
 
LGPL版より申し込みください。
 ※
個人情報のお取扱いについて
  • お申し込みに際して頂きました個人情報は、セミナーのお申し込み受付、今後のセミナーのご案内、サービス、商品等のご案内の為に利用させて頂きます。それ以外の目的で個人情報を利用する場合は、改めて目的をお知らせし、同意を得るものと致します。
  • ご本人様の個人情報(お名前、住所、会社名、部署名、電話番号、ファックス番号、E-Mailアドレス)は、同利用目的のため、弊社グループ会社との間で、共同利用させていただきます。
  • 個人情報に関する業務を委託する場合は、適切な業者を選定し、当該委託先と秘密保持契約を締結の上、当社の監督の下で委託致します。
  • 当社からの今後のご案内を希望されない場合、個人情報に関する開示請求・開示後の訂正・削除、利用停止の請求等につきましては、お手数ではございますが、下記のお問い合わせ先までご連絡ください。ご本人であることを確認させていただいた上で、すみやかに対応させていただきます。
【お問合せ先】
〒 171-8513 東京都豊島区南池袋 2-32-8
株式会社 SRA
SRA UI/UX担当
電話 : 03-5979-2800 受付時間 9:00 ~ 17:30
E-mail : uiux-sales@sra.co.jp

個人情報保護方針

上記、「個人情報の取り扱い」について同意頂いた上で確認画面へお進み下さい。
入力内容を確認するウィンドウが表示されます。

(ご請求先 : 受講される方と違う場合)
 

例)000-0000