Alpaca Time Blog

ゲーム作る系 草食動物の備忘録

C++/CLI

【C++/CLI】OpenFileDialog::ShowDialogでフリーズする

発生 openFileDialog1->ShowDialog(); を実施すると、ダイアログが開かずアプリケーションがフリーズしました。 原因 エントリーポイントの関数に [STAThreadAttribute] 指定が無いと、フリーズするみたいでした。 using namespace System;using namespace S…

【c++】「version」ファイルがあるとエラーが出る。

C++20 で #include <version> が出来ました。 https://cpprefjp.github.io/reference/version.html これにより、 include のパスに、 「version」ファイルや 「VERSION」ファイル(大文字/小文字を区別しないOSや設定*1) があると、 優先順位によってはC++20でない「</version>…

ファイルのドラッグドロップ受付

フォームのプロパティ変更 AllowDrop = True イベント処理 DragEnterとDragDrop (ドロップ許可とドロップ処理) が必要 // ファイルドロップエンター private: System::Void MainForm_DragEnter(System::Object^ sender, System::Windows::Forms::DragEvent…

DataGridViewを編集した時に、即座に反映させたい。

DataGridViewは、 チェックボックスやテキストボックスの内容を変更しても フォーカスが変わらないと内部の変数に反映されません。 (CellValueChangedが発生しない) DataGridViewのCurrentCellDirtyStateChangedイベントで CommitEditを行うことにより、 …

CLIでstaticな変数を含むlibrary

自作のライブラリをリンクしてみたら dbgheap.c 1414 でASSERT出た><。 おそらくライブラリの中、singletonいっぱいなのでstaticな変数やらが引っ掛かってる予感。 ●対策方法 プロジェクトのプロパティ→[リンカ]→[詳細]のエントリポイントを mainから ?mai…

DataGridViewコントロールで行番号を表示

DataGridViewコントロールで行番号を表示するには?[2.0のみ、C#、VB] - @IT http://www.atmarkit.co.jp/fdotnet/dotnettips/506dgvlinenum/dgvlinenum.html を C++/CLIで書いたのメモ private: System::Void dataGridView1_RowPostPaint(System::Object…

スタティックライブラリでエラー出た

C++/CLIでない、スタティックライブラリリンクしたら DotNetTest2005_00 error LNK2020: 未解決のトークン (0A000013) exception.__ctor DotNetTest2005_00 error LNK2020: 未解決のトークン (0A000030) exception.__dtor DotNetTest2005_00 fatal error LNK…

windows.hなプログラムを利用する方法

stdafx.hとかに #include <windows.h> #pragma comment(lib, "user32.lib") #pragma comment(lib, "gdi32.lib") とか で、 ::MessageBox( 0 , "test" , "caption" , MB_OK ); 等が使える。 HWND取得 //丁寧にキャスト HWND hWnd = reinterpret_cast<HWND>(this->Handle.ToPoin</hwnd></windows.h>…

C++/CLIはじめました。

WindowsでのGUI作るのに APIで最初から書くのは凄まじくめんどくさく、 MFCの痒いところに手が届かない所に嫌気がさし、 かといっても(業務や個人的趣味で)C++でやらないといけないのでC#は無理であり、 C++Builderは、更新してないので せっかくだから、俺…