2010
4月
22

(以下、お食事中の方はご遠慮下さい。)

えーと、↓この日記から約1年3ヶ月ですかね。
http://takabosoft.com/20090122102755.html

( ゚д゚) またしても強烈な下痢を味わいました。

腹痛&微熱で会社を休んで寝ていたら、だんだん症状が悪化して

  • 下痢
    ちなみに子供の頃、下痢の最強クラスのことをおかんは「新幹線」と呼称していたが、今回もこの新幹線である。
  • 嘔吐
  • 高熱
  • 手足顔の痺れ
  • めまい
  • 過呼吸

ってどんだけー!

しかも住んでる家に他に頼れる家族が誰もいない(笑)

本当に、あまたが馬鹿になっちゃうかと思いました(ゲリラの歌に掛けて)。

ふと実家の母の事を思い出し、連絡してみたらご在宅でいらっしゃったので
迎え&病院まで連れて行って頂きました。

病院の先生とおかんには感謝してもしきれません。

さて、今日からの目標は「『二度あることは三度ある』の延命方法」です。
よろしくお願いいたします。

ドッターの皆さんはとりあえず↓の動画を見ていただければ、内に秘めた想いが溢れ出すと思います!

第四回の作品を募集中とのことで、詳しい参加規約は公式ブログの方をどうぞ。
http://amaisakura.blog28.fc2.com/blog-entry-30.html

締め切りは2010年7月2日でして、まだまだ時間がありますので、興味のある方は参加されてみてはいかがでしょうか??

Edge1

↑右がリソースエディタで貼ったツリーコントロールで、
左が↓のコードで貼ったツリーコントロール。

// m_TreeはCTreeCtrl型
m_Tree.CreateEx(WS_EX_CLIENTEDGE, WS_CHILD | WS_VISIBLE | TVS_SHOWSELALWAYS, CRect(10, 10, 200, 200), 
this, 0);
m_Tree.InsertItem(_T("ああああ"));

見てお判りの通りWS_EX_CLIENTEDGEが付きません。
CTreeCtrl::CreateExのソースを見てみると、変なことやってますので、そりゃ付かないですね。

BOOL CTreeCtrl::CreateEx(DWORD dwExStyle, DWORD dwStyle, const RECT& rect,
	CWnd* pParentWnd, UINT nID)
{
	BOOL bRet = Create(dwStyle, rect, pParentWnd, nID);
	if (bRet && dwExStyle != 0)
	{
		bRet = ModifyStyleEx(0, dwExStyle);
	}
	return bRet;
}

かと言って

m_Tree.CreateEx(0, WS_CHILD | WS_VISIBLE | TVS_SHOWSELALWAYS, CRect(10, 10, 200, 200), this, 0);
m_Tree.ModifyStyleEx(0, WS_EX_CLIENTEDGE, SWP_FRAMECHANGED);
m_Tree.InsertItem(_T("ああああ"));

こんなコードにしても、↓のようにビジュアルテーマ(?)が適用されません。
Edge5
(WS_BORDERだとちょっと濃い枠が付くため、これもちょっと違います。)

回避方法としては、

m_Tree.CWnd::CreateEx(WS_EX_CLIENTEDGE, WC_TREEVIEW, _T(""), WS_CHILD | WS_VISIBLE | TVS_SHOWSELALWAYS, CRect(10, 10, 200, 200), this, 0);
m_Tree.InsertItem(_T("ああああ"));

というように、CWnd::CreateExを直接呼び出してしまう事ぐらいでしょうか。

これで一応リソースエディタで貼った物と同じ枠が付きます。
Edge6

MFCのバグ一覧とかどっかにまとまってたりしないのかな・・・。

DirectShowの動画編集機能(DES)を使っていろいろ実験していたところ、
アルファブレンディングがどうにも上手く行かなかった。

http://msdn.microsoft.com/ja-jp/library/cc352035.aspx

ちゃんとやったつもりが、動画プレビュー時に何故かアプリが何事もなかったかのように終了してしまう(例外なども無し)。
各関数のエラー値を見たりエラーログ出力機能を使ったりしても原因を特定できず・・・。

ふと、コンパイルしたEXEをエクスプローラ上から起動してみたら上手く起動できましたorz
なんですかこれ、Vsual Studioの「デバッグの停止」が誤爆してるんだろうか??

新年あけましておめでとうございます。
本年もよろしくお願いいたします。

昨年を振り返ってみると、iPhoneアプリなど新しい分野に挑戦する事が出来たので、良い1年だったなぁと思います。

触った言語としましては、

  • C++:多め
  • ObjectiveC:多め
  • C:ちょろっと
  • AIR(ActionScript):そこそこ

と言った感じでした。
アパッチモジュールをCでちょこっと書いた時はしんどかったですが、それもなかなか良い経験だったなぁと思います(やっぱりオブジェクト指向言語の方が良いです)。

今年楽しみにしていることと言えば、まずは

  • グランツーリスモ5
  • Visual Studio 2010

あたりでしょうか。

特にVS2010はベータ版を触ってみたところ、MFCのクラスウィザードが復活しており、イベントハンドラの一括追加ができるようになったようです。
(VS2008までは、イベントハンドラが一つずつしか追加できないようで、すごく面倒でした。)
これだけでも買う価値は有るかと思います。

今年もしばらくはまだ忙しい時期が続きそうですが、またいろんな事に挑戦していきたいと思いますので、お付き合いいただければと思います。

記事検索

アーカイブ