Qt
JPEG開くのに失敗する!と散々困って終わってみれば以前にもやったような気がしなくもない事だった。 次の画像形式をQtで扱う場合、QtHoge.dll以外にplugins/imageformats以下に入ってるdllが必要になる。 GIF ICON JPEG MNG SVG TIFF 上記の画像形式を扱う…
setWindowOpacityはウィンドウそのものの透過率の設定。 ウィジェットを個別に透過させたい時は次の方法を取る。 // パレットを設定しautoFillBackgroundを利用して透明色で塗りつぶす。 widget->setPalette(QPalette::Background, QColor(255, 255, 255, 12…
qmakeのproファイルにて以下の変数を設定する。 QMAKE_LFLAGS_RPATH QMAKE_RPATHDIR 例えば、proファイルにQMAKE_RPATHDIR=/opt/myqtと設定すると soファイルの検索リストの先頭に/opt/myqtが追加される。
// システムアイコンの取得 QIcon icon = QCommonStyle().standardIcon(QStyle::SP_HOGEHOGE); // ファイルに設定されたアイコンの取得。 QIcon icon = QFileIconProvider().icon(QFileInfo(FILENAME)); ディレクトリのアイコンはシステムアイコンに含まれて…
Qtを使った自作ツールならまだしも、Skypeで表示幅が狂ってるのはものすごく気になるので直した。 一番簡単な解決策は日本語リポジトリを導入してapt-get update / apt-get upgradeを行う。当然採用。 http://www.ubuntulinux.jp/products/JA-Localized この…
ubuntuでpulseaudio使ってる時にphonon使って音鳴らそうとすると動かない件。 ググってもいまいちよく分からない。というか解決策書いてあるページ出てきてるのか? 前はphonon使ってるアプリ動かす前にHOMEディレクトリの.pulse消したら一応動いてたけど、…
QWidgetの第二引数にQt::FramelessWindowHintを渡すだけ。 サンプルはQtのexamples/widgets/shapedclock。
だいぶQtにも慣れてきたのでQtScriptをいじり始めてみました。 QScriptEngine engine; QString script("1+2"), result; result = engine.evaluate( script ).toString(); これでresultに文字列の3がセットされます。 QtScriptはECMA Scriptをベースにしてい…
QObjectを継承しているクラスをnewしてオブジェクトを作る際、コンストラクタにQObjectを継承しているクラスのオブジェクトを親オブジェクトとして渡すと、親オブジェクトが破棄される際に子も自動で破棄されます。 つまり自分でdeleteする必要がなくなる訳…
Linux上で書いたQtアプリのソースコードをWindowsに持ち込んでそのままビルドする。失敗。 ソースコード(.h/.cppファイルのみ)をShift_JIS+CRLFに手直ししてビルド。無事成功。 QMessageBoxを使って表示するダイアログの文字だけが化けている。 日本語リテラ…
デフォルトでQtのメッセージループの中で非同期通信を行うので、main関数の中で必ずQApplicationのオブジェクトを作ってexec()を呼ぶ事。 そうしない場合、通信が終わる前にアプリが終わる。 signal/slotもQtのメッセージループの中でのみ有効なので同様に気…
Linux版しか使った事なかったので、Windows用に関してのメモ。 TrolltechからそのまんまWindows用のバイナリを落としてくると、MinGW用なのでVisual Studioでは使えないそうな。 で、Visual Studioで利用できるようにするためには自分でソースからビルドする…
GLUTによる「手抜き」OpenGL入門 が最後まで終わりました。 図形の描画はともかくとして、視点周りでかなり混乱・・・。 床井先生の書かれてる超基本編だけなら問題は無かったのですが、gluPerspectiveをglFrustumに変更するときにglOrthoと同じようなもん程…
GLUTによる「手抜き」OpenGL入門 を参考に多分2日目くらい。9.アニメーションまで終わった。 とりあえず立方体を三角関数使って簡単にアニメーションさせて喜べるようになりました。 関数名とかは当該ページを見れば分かるから考え方をメモ。 座標変換プロ…
書いてから思ったけど、tipsでは無い。1つしか書かないから。 qmake -projectする度に、自分が後からproファイルに追加した変更は消えてしまう。 20文字くらいしか足さないならいいけど、あれこれIncludeパスとか追加したりしたときは追加作業が余りにも面倒…
QtのQtOpenGLモジュールを使ってみました。 何故かあんまり日本語情報無いのね。 おかげでサンプルの謎な部分が何やってるのか検索かけてもさっぱり出てこない。 みんな違うの使ってるのだろうか。 当面はソースとにらめっこすることになったりするかもしれ…
#include <iostream> #include <QString> #include <QTextCodec> int main(int argc, char *argv[]){ // utf-8な文字列をQStringが受け付けるようにする。 QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf-8")); // utf-8な文字列をtr()が受け付けるようにする。 QTextCodec</qtextcodec></qstring></iostream>…
Kubuntu上でGUIプログラミングを行うのにQt4を利用しようと思ったので、必要な物のインストール及び設定メモ。 まずAdeptとかを使って公式のリポジトリからQt4関係の物を一式インストールしようと思ったけども、uicとかが何故か古いので本家のtrolltechから…