2012-01-01から1年間の記事一覧

newの再定義とboostのインクルード

boostのライブラリをインクルードする時、 newを再定義していたりすると*1、コンパイルで落ちることがある。上手くinclude順を調整すれば回避できるようだが、 一筋縄でいかない事もあるので注意。 *1:メモリリークの検知などで行番号を埋め込むときとか

二次元vectorの初期化

stl::vectorの初期化。 多次元の場合、この書き方だと楽に初期化できる(知らなかった)。 vector<vector<int>> v; ... v = vector<vector<int>>(100, vector<int>(100, 0));きっと3次元以上でも同じ要領で出来るのかな?</int></vector<int></vector<int>

勝手に動かないで

WPFのデザインモードかどうかをチェックする方法。 デザインモードではカレントディレクトリなど、色々実行時と異なる要素がある ので、それで例外投げて落ちられると、デザイナが機能しなくなる。 DesignerProperties.GetIsInDesignMode(this) //thisはUIエ…

WPFでのUIアンチエイリアス封じ込め

WPFでのアンチエイリアス封じ込めのために。 Root要素で以下の指定をしておけば大体全部?アンチエイリアスを無効にできる。 RenderOptions.BitmapScalingMode="NearestNeighbor" RenderOptions.EdgeMode="Aliased"http://blogs.msdn.com/b/hiroyuk/archive/…

画像つき背景とか

ちょっと凝った背景*1をコントロールの背景に設定し たい時、Templateを使えば上手くいくかと思ったら中々行かなかった。仕方ないので何もしないGridのみのUserControlを使って代用。 これで背景などのスタイルも一元管理できるけど、 いささか大掛かりすぎ…

最近の開発事情

最近はWPFを久々にゴリゴリ書きつつ、 リソース管理用のツールを大々的に作ってる状態。「モノクロ」時代からの反省を生かしつつ、 今度はできる限りデータ抽象をきっちり作って、 コンテンツは全部ツールの方で弄ろうという魂胆。。。ついでにエフェクトエ…

UserControlの継承めも

自前のUserControlを継承して、 派生のUserControlを作りたい時に。 基底クラスのコードをoverrideして独自処理にしたりとか。基本的なやり方は、 http://d.hatena.ne.jp/kent013/20091129/1259482727 http://d.hatena.ne.jp/okazuki/20091025/1256472760 ht…

WPF:ResourceDictionary

WPFのResourceDictionary、外部からのロードの例。 <UserControl.Resources> <ResourceDictionary Source="/CommonResource.xaml"/> </UserControl.Resources>VS2010以降?は頭に"/"入れないとプロジェクトを正しく参照しないっぽい。 古い記事とかだと"/"無しが見られるので注意。

画像フォーマットのコンバータ

実行ファイルが置いてあるディレクトリ内のBMPファイルを 全てPNGファイルにコピーするPythonスクリプト。 Python書くのは久しぶりなので、色々と雑なのは悪しからず。 ディレクトリの、日本語パスには対応していないっぽい(駄目だった)。Python2.4使用。 …

Pixel-Snapとか

SnapsToDevicePixelsプロパティをTrueにすることで、アンチエイリアスを無効化。 Keyboard.Focus(UIElement)キーボードのフォーカスを取得させる。ImageとかでもOK。画像リソース埋め込みメモ。 ビルドアクションは"Resource"、出力ディレクトリに「コピーし…

ZIndexプロパティ

ZIndexの値を大きく設定したUIが上に描画される。 DockPanelの登録順で配置を制御している*1場合の補助に使える。 *1:代わりに描画順が制御できないので、ZIndexを使う

ClipToBoundsプロパティ

UIElementクラスのClipToBoundsプロパティをtrue*1 に設定すると、 コントロールの境界線上で子要素をクリッピング出来る。お手製ScrollViewerの実装で、子要素をスクロールさせた時に、 UIの外側に子要素がはみ出ないように、ちゃんと設定しておくこと。 *1…

WPFのScrollBar

ScrollBarのThumb(つまみ/スライダー)の大きさの指定は、 scrollbar.ViewportSizeのプロパティを適切な値に指定してやればOK。 ぶっちゃけ「あの部分の名前なんだっけ」のために当該プロパティを延々探すハメに。。。http://msdn.microsoft.com/ja-jp/libr…

Boost

boostpro http://www.boostpro.com/インストーラーが提供されている。 色々楽できる(いつも忘れるのでメモ)。

考え事2012-05-09の巻-2

メールからの投稿テスト。 こっちからの方が色々書きやすいかな?技術メモとか憧れますね(3日坊主)

考え事2012-05-09の巻

とりあえず元気です。色々落とし所が見えてきたので、 あとはちゃんと着地できるかどうかチェックしつつ詰めていく感じで。

考え事20120219の巻

半年くらい経った気がしたけど実はまだ一月半という罠。 MarbleTownsは大体のデザインが決まったので、あとはそこまで走り込む作業。 それが夏までに終わればいいけれども。 とはいえしばらくは作業できない状況なので、どうにかこうにか。。。 そういえば去…

考え事20120107の巻

放ったらかし気味になってきたので何か書く。 一応こっちの存在意義は技術メモ的なものです。存在意義が最近お留守ですが。 最近いじっているXAudio2の方も、もう少しこなれてきたら技術メモとして色々まとめたい所。 個人的にWebの資料が余り多くない気がし…