DialogC
C言語ダイアログベースプログラミング環境
〜〜C言語入門用〜〜
ダウンロード
「Example.
l
zh」
Visual C++ 6.0
のプロジェクト一式です。
DialogCとは
DialogC
はC言語でダイアログベースのプログラムを作成する環境を提供します。
プログラミングの学習を始めるのに、いきなりC++言語や、他のオブジェクト指向言語から始めるのもいいでしょうが、やはりまずはC言語から始めてるのも良い方法です。
しかしC言語でウィンドウを使ってGUIを持つプログラムを書くことは、できないことはないにしろ、いろいろ厄介な面があります。特に初心者にとっては簡単ではないでしょう。
かと言って、コマンドラインベースのプログラムを扱うのも、初心者にはかえって厄介な面もあります。
なんと言ってもGUIが蔓延している昨今では、コマンドラインベースでは見劣りし、学習意欲も湧かないというものでしょう。
そこで、DialogCではC言語でダイアログベースのプログラムを書ける環境を提供します。これを使えば、通常初心者が書くC言語プログラムと同じ感覚で、ダイアログベースのプログラムを作成できます。
決して派手なGUIを書くことはできませんが、少しでも楽しくプログラミングが上達できれば幸いです。
作業のはじめ方
「
DialogC
」を使って作業をはじめるにはいくつかの方法があります。
一番簡単なのはサンプルプロジェクト「
Example
」一式をダウンロードし、適当なフォルダに解凍し、そこから作業を始めるといいでしょう。
「
Example
」のオリジナルは残しておき、新しいプログラムを作るごとに、違う名前のフォルダにコピーするといいでしょう。
「
Example
」にはあとで示すように、簡単なダイアログと、簡単な
main( )
関数が用意されています。プログラムはこの
main( )
関数を変更することから始めるといいでしょう。
Exampleの説明
●
ダイアログボックス
「
Example
」には予め次のようなダイアログボックスが用意されています。当面はこのダイアログを使用してプログラムを作成していきます。
●
ソースファイル
「
Example
」には「
main.c
」に、次のような空のプログラムが用意されています。当面はこのファイルに追加してプログラムを追加していきます。
#include "dialogc.h"
#include "resource.h"
void main(void)
{
xprintf(IDC_STATIC_TEXT, "Static text");
xprintf(IDC_EDIT_BOX, "Edit box");
if(waitbutton()!=IDC_EXECUTE_BTN);
}
関数仕様−1
void main(void);
プログラムは、この
main( )
関数からはじめます。
通常の
main( )
関数と違い、引数も戻り値もありません。
void xprintf(int id, const char* fmt, ...);
コントロールへ
printf( )
と同じような感じで文字を表示します。
id
にはコントロールの
ID
を渡します。
fmt
以下には
printf( )
と同じように書式指定文字列と、それに対応した引数を渡します。
int waitbutton(void);
ボタンが押されるのを待ちます。
この関数は呼び出すとすぐには戻らず、何れかのボタンが押されると戻ります。
戻り値には、押されたボタンの
ID
が返ります。
size_t gettext(int id, char *s, size_t n);
コントロールに入力された文字を取り込みます。
fgets( )
とよく似ていますが、1行単位ではなくコントロールに入力された文字全てを取り込みます。
id
にはコントロールの
ID
を渡します。
s
には文字列を取り込むための領域のアドレスを、
n
にはそのサイズを渡します。
この関数は、
n
のサイズを超えては文字を取り込みません。
Exercise
Exercise-1
@
プログラムが起動したときに、スタティックテキストに「
Hello
」と表示する。
A
「
Execute
」ボタンが押されると、エディットボックスに入力された文字が、スタティックテキストに表示されるようにする。
Exercise-2
@
プログラムが起動したときに、スタティックテキストに「
0
」を表示する。
A
「
Execute
」ボタンが押されるたびに、スタティックテキストの数値がインクリメント(1ずつ足される)するようにする。
「
その他の
Exercise
」
利用規約・免責
ここに公開しているプログラム、およびドキュメントはすべて私の著作物です。
自由にご使用して頂いて結構ですが、私は何ら責任を負いません。
自己の責任においてご使用ください。
再配布はオリジナルのパッケージにままを希望します。
Copyright(C)2004上田義明
last update 2004.12.12
ysfactory@fiberbit.net