asaのブログ

プログラミングの勉強まとめ

C++

Qtチュートリアル11(回転)

C++

この前作ったQtのお絵描きソフトに回転機能を追加しました。 アンドゥの実装も現在進行中で、最近QUndoStackがあることを知ったのでそれを今後使用する予定です。 メニューバーに”Effect”を追加しました。Rotateボタンを押すと回転します。 QActionとスロッ…

Qtチュートリアル10(描画機能)

C++

描画関係のコードを下にまとめました。コメントで大体に書きましたが、1つとてもおもしろい機能があったので紹介します。 updateというメソッドをこれまで何度か使用してきました。これはQWidgetクラスのメソッドで、画面を再描画する必要があるときに呼び出…

Qtチュートリアル9(QPenのカラーと太さの変更)

C++

描画時の線の太さと色を変える機能を見ていきます。これまでなんとなく流れがつかめてきましたが、QtでGUIを構築する際の流れはMVCモデルに沿うと、UIの作成⇒スロットの接続⇒スロットの実装⇒モデルの実装です。 画面的には次のように選択画面があり、 カラー…

Qtチュートリアル8(画像保存)

C++

前回の画像表示と同じく、画像保存もMVCモデルが基になってます。 関連するメソッドは save saveFile saveImage です。またクラスについては QObject QAction QImage QString が関わる点を念頭に置くと分かり良いです。 saveスロット gist8296b075eaaedb077c…

C++ 基礎2(オブジェクトポインタ、構造体、共用体)

C++

C++基礎の2回目です。 オブジェクトポインタ gistee1322c0e80ee6aeabb6b6e9621dd5cb 構造体 gist5e9418ec5c6bfeaf700f1b091ee1bec4 共用体 コード中のコメントは帯×⇒体ですね。 gist41bbff400360d07e53fff9fa1c80e1ec 構造体(コンストラクタ+デストラクタ…

Qt チュートリアル7(画像表示)

C++

前回作成したペイントソフトの機能を見ていきます。先に結論から入ると分かり良いと思いますので示しておきます。 実装の概要 Qtを使ってMVCモデルに沿って画像の読み込みを実装しています。Viewであるopenメソッドは単にユーザーからの入力を受け取るだけで…

Qtチュートリアル6(保存、ペンの太さ、色の実装)

C++

Qtでざっくりと絵を描くアプリを作ります。基本的な機能として保存、開く、ペンの太さ、色の選択を実装しています。今回はQtのサンプルを参考にしています。これにしばらくアンドゥなどの機能やOpenGLを載せていきたいと思います。 少し長くなるので、詳細な…

C++ 基礎1

C++

QtもOpenGLもC++で書いています。そこで、C++の基礎を少しづつ振返っておこうと思います。 参考書はこちらです。 独習C++ 第4版 作者: ハーバート・シルト 出版社/メーカー: 翔泳社 発売日: 2015/11/25 メディア: Kindle版 この商品を含むブログを見る 仮引…

WIN32APIチュートリアル1

C++

Windowsプログラミングを学習します。 インクルードファイル Windowsプログラムを作成する際は必ずwindows.hをインクルードします。またmain関数がなく、代わりにWinMain関数が存在しています。Windows関数はWINAPIにほとんどがまとめられています。WinMain…

Qtチュートリアル5(PaintEvent)

C++

今回は "Basic Drawing Example | Qt Widgets 5.9"を参考にQtによる描画を学習します。PaintEventの復習も兼ねて上のサンプルから要点だけ取り出しました。 コード gist958b6a9410d9842224d0d0e68d2d57dc 内容 サンプルでは描画機能を網羅的に解説するため、…

Qtチュートリアル4(QComboBox)

C++

QComboBoxを使用して性別と血液型を問い合わせるWidgetを作成します。 Widget.h gista70ffbb023958120ef1845a2fc0dc147 Widgetの内容は コンストラクタ スロット×1 コンボボックス×2 ラベル×2 プッシュボタン×1 です。 Widget.cpp gist494e7cefe2b4d1a35…

Qtチュートリアル3(PaintEvent)

C++

QtのPaintEventを学習するために次のようなアナログ時計をQtで作ってみます。 Analog Clock Example | Qt Widgets 5.9 時計は時間の経過とともに針が動きます。時間の経過に従って画面を描画し直す必要があります。こうした画面描画を行う際に使われるのがPa…

Qtチュートリアル2(MainWindow、QMenu)

C++

簡単なテキストボックスを作って、メインウィンドウの使い方とメニューバーの作り方を学習します。 textBox.h QMainWindowの派生クラスとしてtextBoxクラスを定義します。テキストボックスの作りは簡単でセントラルウィジェットにテキストを入力するウィジェ…

Qt5.9の環境構築(MinGW)

C++

前にQtをVisualStudioで環境構築しましたが、MinGWでもできたので忘れないうちにメモしておきます。 必要なもの Qt5.9のオフラインインストーラー インストール Visual Studioの時と違ってすでにVisual Studioがインストールされている必要があるとか、Windo…

Qtチュートリアル1

C++

Qtの簡単な使い方です。 シグナルとスロットについて イベントが発生したらシグナルを送ってそれを処理するというのが基本の流れのようです。ボタンが押されたというシグナルをQtアプリに送ります。するとスロットに登録されたメソッドが実行されます。 QPus…

Qt5.9の環境構築(Visual Studio2017)

C++

C++でGUIを開発するためにQtを導入しました。やや面倒な点があったので覚えているうちにメモしておきます。 筆者の環境 ・Windows7 pro sp1 ・Visual Studio2017 必要なもの ・Windows SDK ・Qt5.9のインストラー Windows SDKのインストール こちらからWindo…

C++チュートリアル1

C++

C++のチュートリアルです。まずはクラスの学習からです。参考書はこちらのKindle版を使用しています。Kindle便利ですね 独習C++ 第4版 作者: ハーバート・シルト 出版社/メーカー: 翔泳社 発売日: 2015/11/25 メディア: Kindle版 この商品を含むブログを見る…