C++BuilderXE3  2015.8.26       戻る

また、懲りもせず、2012.9にC++BuilderXE3を購入(DownLoad)。char*、wchar_tの問題で悪戦苦闘。 c++builder6.0→XE に変換したソ−スを XE→XE3に変換しようとした所、fman32でchar*、wchar_tのおびただしい量のエラ−が発生 し

wchar_t *w;  const char c[];  mbstowcs(wc, c, sizeof(c)); mbstowcs() を利用すれば char*、wchar_t の問題は解決しそうでしたが、余りに多すぎ、変換を諦めてしまいました。

インスト−ル後、ヘルプを表示しようとしたら、なにやら、VisualStudioに入っているプログラムがなく駄目。以前に入手していたVisual Studio2010Expressをインスト−ルした所、ヘルプが表示されるようになりました。

C++BilderXE2 から実装された FireMonkey にも挑戦してみました。
FireMonkeyを利用すると、プログラム サイズを 小さくする方法があるのかも知れませんが、私がコンパイルすると、 8Mbほどと大きくな ってしまいました。

Windows8へのインスト−ルは、DVDの install¥Setup.exe から可能でした。




Form、Panelなどの変形

自作プログラム(32ビット版の自己解凍式のファイルです)

keisoku.zip
画像の大きさ測定
ver1.00(2015.8.26)
kmlconv.zip
KML→CSVに変換する
Ver1.01(2014.05.10)
info.zip
VR_MANGR.IFOからタイトルを抜き出し、表示
ver1.00(2013.12.03)
codepage.zip
UTF-8をSiftJisに変換するだけ
ver1.00(2013.1.6)
sphere.zip
球体が廻るだけのデモ
Ver1.00(2012.9.27)
dvdout.zip
DVDドライブの開閉をする
Ver1.00(2012.9.27)
rgb_conv.zip
RGB<->10進、16進変換
Ver1.00(2012.10.14)
calorie.zip
カロリ−→単位、単位→グラム、グラム→単位の変換
Ver1.00(2012.10.19)


































































keisoku.exe ver1.00  2015.8.26

左図のAは5mmの方眼紙で、これを基準として、Bの距離を測ったものです。マウスの左を押し、そのまま動かし、マウスのボタンを離せば 線が引かれ測定されます。
CLEARで基準値以外の線は消えます。

動作はWindows10で確認、現在これ以外のWindowsがなく8.1などは確認しておりません。C++Builder XE8でもコンパイルできます。


































































kmlconv.exe ver1.01  2014.5.10

山旅ロガ−で作成した xxx.kmlファイルからname、Positionを調べ、名前、緯度、経度 をcsvファイルに書き出しgoogle mapなどで利用する目的で作成したプログラムです。

山旅ロガ−はUTF8で書き出されており、LoadFromFile(FNAME,TEncoding::UTF8)としないとcsvで文字化け を起こします。
csvはlat、lon、name、snippet、descrptionの順に書き出し、google mapから利用出来ました。また libreofficeからも読めました。
Ver1.01 <LineString> タグに対応


































































































































info.exe  ver1.00 2013.12.03

 info_exe.zip  実行フアイル
 info_src.zip   ソース フアイル

TV番組から録画した映画など整理してmp4に直し、HDDに保存する際、VR_MANGR.IFOからタイトルを抜き出し、フアイル名とし保存 する事を目的しております。
エクスプロ−ラよりフアイルを「Drag&Drop」で入力しております。
ヘッダ−フアイル でWindowsからのメッセージ WM_DROPFILES を DropFiles で受け取るようにする void __fastcall DropFiles(TWMDropFiles msg); BEGIN_MESSAGE_MAP MESSAGE_HANDLER(WM_DROPFILES, TWMDropFiles, DropFiles) END_MESSAGE_MAP(TForm) FormCreateで ::DragAcceptFiles(Handle ,true); DropFilesの中で ::DragQueryFile((HDROP)msg.Drop,0,FileName,255); でフアイル名を受け取り、 Label、Editコントロ−ルに表示


































































































































































































codepage ver 1.00 2013.1.3

フオ−ムはVCL Desktop

codepage_exe.zip   実行フアイル
codepage_src.exe   ソース フアイル

C++Builder2009以降?UTF-8も、Memo1→Lines→LoadFromFile(FileName,TEncoding::UTF8)などTEncoding::UTF8を付ける事で読書き可能となった事を知り 試して見ました。

RichEditで試した所、一部フアイルで読み込めず、Memoでは読み込めるなど、変な動作が見られました。Memo1→Lines→SaveToFile(FileName,TEncoding::UTF8)でSave すると、BOM(Byte Order Mark)つきでSaveされ、BOMが付いていると、TEncoding::UTF8を付けなくなくとも文字ばけせず、読み込み可能でした。


































































































































カロリ−、BMI計算  Ver1.00 2012.10.14





糖尿病の食品交換表を利用する際、食品のカロリ−表示を単位(1単位80カロリ−)に変換しなと上手く計算出来ないので、その一助 になればと思い、また肥満度の目安となるBMIも計算出来ればと重い作成しました。

Formは「HD FireMonkey アプリ」を選択、Formはカロリ−用と、BMI用の2つを作り、Label と Editをペタ・y・E^貼りつけ ました。

カロリ・|を単位に変換する・スめに、食品のグラムとそのカロリ−入力し確定ボタンを押し、その後、単位→グラム、グラム→単位を計算

BMI=体重(kg)/身長(m)の二乗で計算しております

( 肥満度は肥満学会の2000年度改定によります )

 
































































SPHERE   Ver1.00   2012.9.27





Formは「HD FireMonkey アプリ」を選択し、左図の構造に示すコントロ−ルを貼り付けました
回転はボタンのクリックでY軸の(Sphere1→RotationAngle→Y=Sphere1→RotationAngle→Y+I)数値を増減する事で行っております


プロパティ-の項目などはXE2とは多少違うようです(XE2を持っていな・「ないので詳細は不明)


































































rgb_conv ver1.00 2012.10.14



RGB <-> 10進、16進値に変換するプログラムです。
16進入力は 0xffffff00 のように頭に 0xff を付けないとなりません。C++BuiderXE3でのカラ−は8桁で先頭にFFが つきます。

また、文字列を10進に変換する際、10桁は (unsigned)StrToInt(Edit4→Text) でエラ−となり、(unsigned)Edit4→Text.ToDouble() で int に変換しました。

終了すためのButtonに、悪戯してCornerButtonにFloatAnimationを付け、Opacityでアニメ−トさせて見ました。 意味もないのですがButtonの角度も斜めにしました。

































































dvdout  ver1.00   2012.9.27




DVDのトレイの開閉を行うだけです。
Formは「HD FireMonkey アプリ」を選択し、左図の構造に示すコントロ−ルを貼り付けました
#include <mmsystem.h> int RET=::mciSendString( L"Set CDaudio Door Open", NULL, 0, NULL ); などのコマンドを利用しDVDのトレイの開閉を行っております。