調べたことをどこかに書いておかないと忘れてしまいそうなので…自分用のメモですが、記事に関して質問などありましたら気軽にコメント欄でどうぞ。 標題のエラーメッセージ、 QPainter::begin: Widget painting can only begin as a result of a paintEvent であるが、アプリケーション内で子ウィジェットを生成してそれにQPainterで描画を行おうとすると遭遇する。たとえばこんな具合のコードで発生する。 QWidget child = new QWidget; QPainter painter(child); QPen pen(Qt::white, 2); painter.setPen(pen); painter.drawLine(0.0, 0.0, 100.0, 0.0); 調べてみたところ、あまりドキュメントや手持ちの本に明確に
いつもお世話になっているWxWikiを抜粋して翻訳 元ネタ WxWidgets Compared To Other Toolkits - WxWiki wxWidgetsと他のツールキットの比較 いくつかの一般的な覚え書き: wxWidgetsはC++によってのみ動作するわけではありません、python, perl, php, java, lua, lisp, erlang, eiffel, C#(.NET), BASIC, rubyそしてJavascriptでさえバインディングがあります(バインディングについての一般的な情報を見てください) wxWidgetsはもっとも完璧なGUIツールキットの一つです。たくさんのユーティリティクラスがあります たくさんのドキュメントがあります(少し散逸気味ですが…) 個人使用、商用使用、どちらも自由です*1 可能な限り、wxWidgetsはプラットフォ
第6章 cairo による図形の描画 81 第 6 章 cairo による図形の描画 6.1 cairo とは cairo は 2 次元グラフィックスライブラリの 1 つです.2 次元グラフィックスの形式は,画像を各画素の色情報で表現するラ スタ形式と呼ばれるものと,画像を線の端点の座標などの幾何的な情報で表現するベクタ形式と呼ばれるものに分類できます. SVG 画像フォーマットをはじめとして,ベクタ形式の画像は,描画する内容を幾何情報として保存しているため,画像を拡 大縮小しても元の情報を失うことなく高品質に表示できます.cairo は,このベクタ形式の画像を表示するためのグラフィック スライブラリです.もちろん GTK+ でも cairo が使用されており,現在最も注目されているライブラリと言っても過言ではな いでしょう.そのため,cairo は C 言語だけではなく,C++ や J
FreeBASIC ExtLibTOC 目次→その他→External Libraries Index←オリジナル・サイト 目次→FreeBASIC のハッキング→FreeBASIC でのハッキングのための情報→External Libraries Index←オリジナル・サイト 外部ライブラリ索引 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい これは、FreeBASIC に、現在含まれている外部ライブラリの一覧です。 個々のライブラリについて、下に示したリンクを訪れて、より多くの情報を参照ください。 必要になる外部ライブラリや DLL を取得するために、ライブラリのホームページを訪れてください。 下記以外にヘッダーを翻訳したり、既存のものを更新した場合は、FreeBASIC forum ∞に、それをポストしてください。あるいは、fbc プロジェクトのパッチtr
Qt はイベント駆動型フレームワークである。 イベントハンドラをリインプリメントすることで QObject 派生クラスの動作を再定義できる。 イベントについて正しく理解していないと、マルチスレッドやシグナル・スロットでハマル場合がある。 正しく理解して、正しく使いましょう。 ■ 目次: イベントの基礎 イベントハンドラのリインプリメント イベントフィルター もっとイベント イベントの基礎 Qt は基本的にイベント駆動型(=イベントドリブンな)フレームワークである。 ※ イベント駆動型とは、イベントを待機し、起こったイベントに従って処理を行うプログラミングパラダイムのこと。 ※ 従来のプログラミングパラダイムは「フロー駆動型」と呼ばれる。 イベントはOSやユーザ操作により生成される。 イベント種別としては、キー、マウス、表示、リサイズ、タイマー等がある。 ※ どのようなイベントがあるかは、ヘ
※Qt Developer NetworkのQt Whitepaperのなんちゃって訳をしてみようと頑張っているページです(;^ω^)イマイチ日本語になってませんがやっつけなので意味が何となくわかればいいやぐらいです(・_・;) このホワイトペーパーはQt C++フレームワークについて記述しています。 QtはクロスプラットフォームGUI開発を「write onece, compile anyware」(1つのコードでそれぞれの環境でコンパイルできる)というアプローチでサポートしています。 1つのソースツリーとシンプルなリコンパイルで、Windows、Mac OS X、Linux、Solaris、HP-UX、その他多くのバージョンのX11を使用したUNIX用のアプリケーションを書くことができます。 Qtアプリケーションはembedded Linux、SymbianとWindows CEプラッ
Ruby/Qteの勉強で行ったQPainterを用いた線の描画プログラムを書いてみた。画面下のテキストエリアの関数の定義を書き、Drawボタンを押すと関数の曲線を描きます。 関数の評価の方法がわからない(evalみたいなのはC++にもあるのだろうか)のでslcalcのソースを使わせてもらいました。 描画はQPainter *pを宣言してp->begin()からp->end()の間で描画内容を記述します。今回はX=-319〜319の範囲での定義した関数によるYの値で決まる座標に線を引いています。 drawtest.h #ifndef DRAWTEST_H #define DRAWTEST_H #include <qmainwindow.h> #include <qwidget.h> #include <qlineedit.h> #include <qpushbutton.h> #includ
Qt5 になって GUI 関連のアーキテクチャが変更されたことで、QtQuick を表示する QQuickView は QWindow の派生クラスとなりました。Qt4(QtQuick1)の QDeclarativeView は QWidget の派生クラスですから、この辺りの構成は大きく変化したことになります。 これに伴って qt-project.org のフォーラム等でよく見る質問の一つが QWidget の中に QtQuick2 を埋め込みたいと言うものです。これまではこの問題を解決する手法はありませんでしたが、Qt 5.1 で QWidget::createWindowContainer() というメソッドが追加されることになりました。 Introducing QWidget::createWindowContainer() QQuickView *view = new QQuic
はじめに QML で特定のフォルダ内に含まれる画像をスライドショーする処理を書いてみた - 凹みTips でもチラッと書きましたが、もう少し詳細に Qt Quick での C++ バインディングについて調べてみたのでまとめてみました。 Qt 始めたてなので幾つか間違い含んでいるかもしれません、見つけたら教えて下さい。 参考 Using QML Bindings in C++ Applications Qt : Qt Quick入門 QML エンジンの進化 その1 | Qt のあれこれ (仮) 基本的には「Using QML Bindings in C++ Applications」の内容を要約して自分の解釈を付け加えた形になっています。 (メモ)Qt Quick 1 と Qt Quick 2 の差異について Qt 5 が昨年末に登場し、その目玉の一つに Qt Quick 2 が挙げられます
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く