wxWidgets
いつもお世話になっているWxWikiを抜粋して翻訳元ネタ WxWidgets Compared To Other Toolkits - WxWiki wxWidgetsと他のツールキットの比較 いくつかの一般的な覚え書き: wxWidgetsはC++によってのみ動作するわけではありません、python, perl, php, java, …
Advent Calendar 初参加です。あまり言語仕様的なところはわからないのですが、なんかC++でGUI作りたいって人のためにwxWidgetsのことを書きます。 概要 1.1 wxWidgetsのアーキテクチャと位置づけ 1.2 他のライブラリとの比較 2.各プラットフォームでのwxWi…
OSXで配布するプログラムを動的リンクライブラリで作成した場合、最終的にライブラリの見ているファイルを変更しなくてはいけない。OSXの作法としては、Hoge.app/Contents/MacOS以下にライブラリをぶち込めばいいらしい。ちなみに Windowsの場合は特に何もし…
ビルドしようとしたら Win9.x系のコードがundefined referenceになってた...ほげー環境:Debian Wheezy コンパイラ: $ /usr/x86_64-w64-mingw32/bin/gcc --version gcc (rubenvb-4.7.2-release) 4.7.2 Copyright (C) 2012 Free Software Foundation, Inc. T…
Macサポートできそう Macクソだ、Macクソだと言いつつもバグを潰しているうちにJaneCloneの基本的な機能が使えるようになった。フォントをMonaに変更したらこの通り。ID抽出がバグってるが気にしない AAも綺麗に表示された、画像の人物は三尋木プロ あとはど…
発端 スレッド間通信なんてけったいなものは、普通趣味のプログラミングでは使わない(たぶん) 使おうと思ったのは純粋にそれが必要になったからだ。 やりたかったこと アプリケーションにログを出したかった。 古くはIEのステータスバーに出るログのように…
MacでC++やるのはつらい。環境構築しにくい。以下手順。 環境はMac OSX Lion 10.7 開発環境を揃える Command Line Tools for Xcodeをインストール 表題の通り、Apple Developerからダウンロードしてインストール。 これを入れるとUNIXコマンド系がひと通り /…
レスポンスヘッダを一緒に出力する場合はオプションをtrueにする new curlpp::options::Header(true) 2chの板一覧情報をcurlppで取得するときの例。かなりすっきりと書けると思う。 相変わらずwxWidgets混じりのC++なんで、単純にコピーしただけではコンパイ…
JaneStyle等で実装されているHTML表示ウィンドウにて画像のサムネイルを表示させる方法(wxWidgetsにて)を検討していた。他に同じ事を考えている人が居るかもしれないのでメモしておく。wxHtmlWindow上では「memory:」というタグが最初から使用することができ…
アプリをだいぶ書き進めてから気づいたが、wx-2.9は以前修正されたバグが直ってないままのところがある。。。よってwx-2.8を使うことにする。以下自分の環境でしか試してないので、確実ではないかもしれないがバグ報告 ・LinuxにおいてwxInputStream::LastRe…
Windows,Linux,Macその他での共通コードからのビルドが可能なwxWidgetsであるが アイコンの読み込み方法はかなりプラットフォーム依存である。やっとMacでの正しいやり方が分かったので、まとめて書き留めておく。 簡単な方から順に説明する1. Linuxの場合:…
wxStringInputStream wxStringOutputStreamというめっちゃ便利そうなクラスがある 使おう
何度も同じようなエントリを書いているが、書かずにはいれない。日本語って面倒。 #include <wx/wx.h> #include <iostream> int main() { wxString jap = wxT("あいうえお"); std::cout << jap << std::endl; std::cout.setf( std::ios::hex, std::ios::basefield );// 16進数で</iostream></wx/wx.h>…
# ./configure --with-gtk2 --with-regex --with-zlib --with-expat --with-opengl --with-sdl --enable-debug_gdb --enable-unicode 結果は Configured wxWidgets 2.8.12 for `x86_64-unknown-linux-gnu' Which GUI toolkit should wxWidgets use? GTK+ 2 S…
/* * main.cpp * * Created on: 2012/05/15 * Author: learning */ #include <wx/wx.h> #include <wx/strconv.h> using namespace std; int main() { // Shift_JISの文字列を const char* 型で宣言 const char sjis[9] = {0x88,0xa2,0x82,0x70,0x90,0xb3,0x93,0x60}; wxString sjis_</wx/strconv.h></wx/wx.h>…
Bindを使いたかったのだけれどエラー出まくりで断念。結局SQLクエリをwxStringでつなげた。 /** * WxSQLiteTest.cpp - wxSQLiteのテスト用ソースコード * */ #include "WxSQLiteTest.h" bool WxSQLiteTest::OnInit() { return true; } int WxSQLiteTest::OnE…
// Listの中にぶち込みたいデータ型を定義する // データ型を書いたヘッダファイル(.h)を別に作成して定義したほうが良い class HogeData { public : wxString name; int number; }; /** 宣言 */ // HogeDataを格納できるHogeDataListを宣言する // この宣言…
wxAuiNotebookのほうが高機能じゃん!wxAuiNotebook wxAuiNotebook はノートブックコントロールで、ドックに格納できるウィンドウ枠を持つウィンドウに 共通の機能を実装しています。 特に、 wxAuiNotebook はドラッグアンドドロップによるタブ順の変更、 タ…
SQLiteはAndroidの標準DB(?)にも採用されている優れたリレーショナルデータベースです。 wxWidgetsで使おうと思っていたので、wxSQLite3をビルドして組み込んでみた。まずぶち当たるのはバージョンの問題。SQLite自体が結構な速さで更新されているのでちゃん…
さよならiconv。さよならLGPL。 // テキストファイルの読み込み wxTextFile file(wxT("./Shift_JIS.txt")); file.Open(wxConvAuto(wxFONTENCODING_CP932)); wxString test = file.GetFirstLine(); frame->SetStatusText(test); frame->Show(true);
Macと他のOSとはアプリケーションの構造が違うらしく、ただ単にソースをビルドするとMac上で正しく動作しなくなる。例)アプリケーションをアクティブにしてもトップにメニューバーが出ない。テキストコントロール上に打ち込んだ文字列がなぜか端末にリダイ…
ツリー構造でファイル名などを配置したいと思った。 wxPanel *panel = new wxPanel(this, -1); wxBoxSizer *vbox = new wxBoxSizer(wxVERTICAL); // 親要素 wxArrayString array; array.Add(wxT("親要素1")); array.Add(wxT("親要素2")); array.Add(wxT("…
wxXmlDocumentを試してみる。wxWikiには、wxWidgetsには適当なXMLパーサがないと書かれていたがwxWidgets2.9からXML読み取り用のクラスを使えるようになったのだ。ひとまずここのサイト『たのしいXML』サンプルファイル集からお借りしたXMLのサンプルファイ…
海外のwikiに非常に良いお手本があったので使ってみる。 Drawing on a panel with a DC - WxWiki 結局wxWidgetsで画像をだそうと思ったらDCのコンストラクタを記述して、実体からメソッドをいじってBlitで描画するようだ。 特にPanelとかSizerとか関係なくDC…
前々から使おうと思いながらEclipseで開発を行っていたwxWidgetsですが、ようやく使い方がわかってきたのでこっちに移行しようかなと。やっぱUnix側のC++はEclipseじゃ無理だべ。Javaに関しては無敵なんだけどな。 最近eclipseのバグの理由がわかってeclipse…
ここで指摘されているようにwxWidgets-2.8では/wx/msw/winundef.h:272:50においてバグがある。 windows.hをインクルードした後に/wx/msw/winundef.hをインクルードしようとするとなぜかコンパイラに怒られる「error: missing binary operator before token "…
アイコンを読み込ませるのに一苦労したという話。お手本のminimal.cppではxpm形式で読み込めているのだが、どうしてもそれができず.ico形式で読み込ませることに成功した。 まず、icoファイルをオブジェクトファイルに固めるためにリソースファイルを記述す…
ようやくGUI版HTTPクライアントが完成した。本当はこの前使ったReadHtmlを組み込んで使うつもりだったんだけど、wxWidgetsにWinInetを組み入れるとエラーが出てどうにもならんかった(※まあマルチプラットフォームとは言えどもUNIX中心に開発された言語だから…
First programs in wxWidgets ここを見ながら初めてのwxWidgetsをやってみる。開発環境をDEVC++にしようとしたんだが、プロジェクトを作って開くたびにエラーが出て嫌な感じなのでeclipse CDTでMakefileを書いて作る(IDEとはなんだったのか…)。自分が書いた…
追記:2012/01/23 現在wxWidgetsはソースをUTF-8で書けば日本語をそのままwxStringに入れることができます。よって以下の記述はアプリケーションの国際化のためだと思ってください。国際化ってのはひとつのアプリケーションで英語、ドイツ語、フランス語バー…