個人事業主の方必見!確定申告のお悩み解決

C言語でメモ帳のようなソフトを作る方法はないのでしょうか。
普通のDOSプロンプトだと画面が下にスクロールされていき、使いづらいものになってしまいます。
何かいい方法があったら教えて下さい。
あと、もしC言語から移りやすくメモ帳のようなソフトを作れる言語があったら教えて下さい。

このQ&Aに関連する最新のQ&A

A 回答 (5件)

★アドバイス


・Windowsプログラムなら次のサイトが有名です。
 http://www.kumei.ne.jp/c_lang/index_sdk.html→『Windows SDK編 第1部』
 第一章から行えばメモ帳も作れるようになるかもしれません。
 メモ帳は次の章です。
 http://www.kumei.ne.jp/c_lang/sdk/sdk_74.htm→『第74章 メモ帳を作る その1』
 http://www.kumei.ne.jp/c_lang/sdk/sdk_75.htm→『第75章 メモ帳を作る その2』
 http://www.kumei.ne.jp/c_lang/sdk/sdk_76.htm→『第76章 メモ帳を作る その3』

注意点:
・このサイトは文字列をマルチバイトとしているためコンパイラのバージョンによって
 エラーが出る場合があります。文字列の記述はTEXT("あいうえお")のようにTEXT()の
 マクロを使って記述するようにしましょう。

参考URL:http://www.kumei.ne.jp/c_lang/
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
猫でも分かるプログラミングに書いてあるとは知りませんでした。さっそく見ていきたいと思います。
あと、今思いついたのですが、DXライブラリを使ってメモ帳は作れるでしょうか。

お礼日時:2008/05/06 10:50

「メモ帳のようなソフト」が欲しければ、素直にメモ帳を使えばいいだけですよね。


メモ帳では何らかの問題があるからこそ、上記のような質問になったのだと思います。

そのあたりの、メモ帳ではどんな問題があるのかとかを明記したほうが、より具体的なアドバイスが得られやすいかと思いますよ。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
今の段階では、Windowsのメモ帳の分身のようなものを作ってみたいなと思っています。

お礼日時:2008/05/10 06:44

★アドバイス


>あと、今思いついたのですが、DXライブラリを使ってメモ帳は作れるでしょうか。
 ↑
 DXライブラリはグラフィックを中心にしたライブラリです。
 メモ帳を作る上で便利なものではないです。
 メモ帳はエディットボックスというGUI部品を使うの基本です。
 もし独自にエディットボックス相当のGUI部品を作る場合には
 描画部分で使えるかもしれません。でもメモ帳には不向きです。

この回答への補足

回答ありがとうございました。

補足日時:2008/05/10 06:40
    • good
    • 0
この回答へのお礼

さっそくDXライブラリでメモ帳を作り始めましたが、とにかく変換機能が使えないのが1番つらいです。
やはりC#などで作ったほうがいいのでしょうか。

お礼日時:2008/05/10 06:39

何を行いたいのかがが分かりにくいですが、さまざまなOS環境に移植されているフリーのテキストエディタ(メモ帳のようなもの)としてはMicroEMACSは有名で、すべてC言語で書かれています。


Win32対応版は下記のところにあります。
http://www.vector.co.jp/soft/win95/writing/se050 …
このほかのものも検索されても良いでしょう。ソースコードを見ると、往年の8ビットパソコンなどにも移植されていることが分かるかと思います。

あとエディタによってはエディタ上でシェル(DOSプロンプトのようなもの)を起動することができるものもあります。これを使うと、エディタと同じ感覚で前のページの状態を見たりできます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
そのメモ帳を見てみましたが、すごいですね。DOSプロンプトでした。

お礼日時:2008/05/06 10:47

Windowsアプリって事で良いのかな。

WindowsでWindowsアプリケーションを作る方法は以下のようなものがある。

・C言語+Win32 API
 私もWindowsが3.1や95だった頃はこれで開発していたものだ。Visual C++ 4.2(16bit/32bit)~6.0(32bit)あたりが主に使われていた。XPやVistaのメモ帳はわりと使えるが、Windows 95ではメモ帳(Notepad)が使いづらかったためNotepadExなるソフトを作ってVectorで公開していた事もあります。もう10年も前の話ですが。多分ソースも残ってるので別に公開するのはやぶさかではないが、今となっては使い物にならないかと。
 現在では一応開発する環境は無料で手に入る。が、今から始めるならあまりお勧めしない。

・VB.NET言語あるいはC#言語+Microsoft .Net Framework SDK
 この構成なら100行程度のプログラムでメモ帳っぽいものは出来上がるのではないかと。もちろん開発環境も無料で手に入る。Microsoft Visual C# 2008 Express Editionで検索の事。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
C言語とWin32APIでウィンドウズのソフトがつくれるんですか。一度検索して調べてみます。
VB.NET言語・C#言語とMicrosoft .NetFramework SDKだとさらに簡単に作れるのですか。覚えておきます。

お礼日時:2008/05/06 10:40

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qファイル出力の場所を指定

現在C++にてhtmlファイルを出力するプログラムを作っているのですが、出力場所を指定することはできるのでしょうか?(現在はそのプログラムソースが保存されている場所と同じファイル内に出力されますが、それをデスクトップに出力するなど。)
もし、方法がありましたら、教えてください。
ソースや参考HPのURLなどのせていただけたらありがたいです。
環境はVisualStudio.NET2003です。
よろしくお願いします。

Aベストアンサー

単にファイル名の前にパスを指定する。

絶対パス指定
fp=fopen("c:/temp/test.txt","w");

相対パス指定
fp=fopen("./hoge/test.txt","w");


デスクトップはOSやユーザによって場所が異なるので、少し面倒です。
XPの場合環境変数を利用してこんな感じで出来ると思います。

例:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void main(void)
{
FILE *fp;
char fname[1024];
strcpy(fname,getenv("USERPROFILE"));
strcat(fname,"/デスクトップ/test.txt");
fp=fopen(fname,"w");
//処理
fclose(fp);
}

Qcでなぜguiアプリが作成出来るのか。

cでなぜguiアプリが作成出来るのか。

現在cについて学習中です。
テキストエディタで書きターミナルで実行しています。
cではアプリが作れるようになるといいますが
現在のままではcuiのソフトしかできる気がしません。

一般的に言われるアプリケーションというものを
作成するにはまた別の手段が必要なのでしょうか。

Aベストアンサー

C言語の標準関数では出来ませんね。
Windowsであれば、WindowsAPIと言う関数群を使ってウィンドウを作成したり、ウィンドウをコントールする事が出来ます。
昔のMS-DOS時代であれば、直接VRAM(画像メモリ)をポインタで操作出来ましたので、VRAMに直接書いていました。

WindowsAPIについて紹介しておきます。
「Win32 API入門」Win32は、WindowsAPIの32bit版と言う意味です。
http://wisdom.sakura.ne.jp/system/winapi/index.html
C言語の知識としては、ポインタから構造体まで使いますので初心者にはムチャクチャ難しいです。CUIが自在に組める人でも挫折者がいますからね。

そうそう、CUIでもこのぐらいは出来るよと言う例も書いときますね。
http://hp.vector.co.jp/authors/VA016117/cprog/index.html
参考にしてください。

Qソフトウェア作成への勉強方法

文系の大学生なのですが、
大学入学後にパソコンに興味を持ち現在独学でプログラミングを勉強しています。
目標はゲームや色んなフリーウェアを作れるようになりたいです。
言語はC言語を勉強していて柴田望洋さんや林晴比古さんの本を読み
一通り基本的な文法やアルゴリズムは覚えました。

しかし数値のソートやデータ構造なんかを覚えたのは良いのですが、
実際に自分が普段使っているようなソフトウェアを作るのにどう結びつけたら良いのかよく分かりません。
特にGUIプログラム作成に関しては全く作り方が分かりません。

そこで今の状況から実際にソフトウェアを作れるようになるにはどういう勉強をしたら良いのか、
どういう本を読んだら良いのかということを教えて頂きたいです。お願いします。

Aベストアンサー

GUIのプログラミングといっても様々なレベルがあります。高速な描画を目指したものもあれば、マルチプラットフォームでの利用を目指したものもあれば、初級者にでもすぐに開発作業をさせられることも目指したものもあります。
C#であれば統合開発環境でHOWTO本の通りに操作すればとりあえずそれなりの画面はつくれます。
javaのGUIフレームワークを覚えれば、Windowsだけでなく、ほかのプラットフォームでも動くGUIを作れます。
WordやExcelやVisioやテキストエディタぐらいになれば、C/C++でコーディングするでしょう。処理速度が要求されるところで、ガベージコレクタなんかに馬鹿げた邪魔はされたくないですからね。
3Dシュミレーションのような高速な描画に特別に価値があるものは、重要な部分をアセンブラで最適化する可能性もあります。(少しづつそのようなこともなくなってきていますが...)
あなたがどんな環境で、どんなプログラムを作りたいかによって、開発言語もライブラリも関連知識も変わってきます。

とはいえ、GUIのプログラムを全く初めてやってみるのであれば、javaか.NETが入りやすいことは確かです。C/C++だと入りにくいのも確かです。そうでなければ、そもそもjavaも.NETも世の中に生まれてきていません。

まずはC#あたりから初めて、.NET以外の環境で動かしたいとか、描画が遅くてどうにもならないとかの問題にぶつかったときに、少しづつC/C++でのプログラミングを考えてもよいのではないでしょうか?

そのころには、また今とは時代が変わっているかもしれませんから。

GUIのプログラミングといっても様々なレベルがあります。高速な描画を目指したものもあれば、マルチプラットフォームでの利用を目指したものもあれば、初級者にでもすぐに開発作業をさせられることも目指したものもあります。
C#であれば統合開発環境でHOWTO本の通りに操作すればとりあえずそれなりの画面はつくれます。
javaのGUIフレームワークを覚えれば、Windowsだけでなく、ほかのプラットフォームでも動くGUIを作れます。
WordやExcelやVisioやテキストエディタぐらいになれば、C/C++でコーディングする...続きを読む

QDWORDの実際の型は何でしょうか

VC++.NETの環境です。
DOWRD dw1 = 1;
int i = 2; と定義し
ここで
if ( i > dw1 ){
何かの処理;
}
とコーディングすると
warning C4018: '>' : signed と unsigned の数値を比較しようとしました。
のワーニングがでます。
これは、DWORDがint型でなくunsigned int型のようにも見えます。
ある本によれば(VC++.V.NET逆引き大全500の極意)
DWORD はint型であると記述されています。
もし、int型ならこのワーニングはでないはずなのですが、
なぜでるのでしょうか。又、DWORDの実際の型は何なのでしょうか。ご存じのかたおりましたら、教えていただけませんでしょうか。

Aベストアンサー

型定義が知りたいのならば、宣言ファイルを見れば疑問を挟む余地もありません。
DWORD型はwindef.hで
"typedef unsigned long DWORD;"
と宣言されています。

Visual Studioを使っているのならば、知りたい型の上にマウスポインタを置いて右クリック、ポップアップメニューの「定義へ移動」または「宣言へ移動」で簡単に知ることが出来ます。

QLNK2019: 未解決の外部シンボルのエラーが出る

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自キャラのデータ
Point2D g_jikipos = {40, 400};//自キャラの座標

//画像ハンドル
int g_jikiimage[11];

//色々なファイルの読み込み
int LoadFiles(){
//画像ファイル読み込み
if(LoadDivGraph("media\\player01.bmp",
11,11,1,64,64,g_jikiimage) == -1) return -1;

return 1;
}


 mymain.h
//他から呼び出させるMyMainの関数
void MyMain();
int LoadFiles();


 myhelper.h(サンプルなので打ちミスはない)
#include "DxLib.h"
#include <limits.h>
#include <math.h>

//構造体宣言
//座標またはベクトルを記録する構造体
struct Vector{
float x,y;
};
typedef Vector Point2D;
//線を記録する構造体
struct Line2D{
Point2D startpos, endpos;
float katamuki;//傾きをラジアン値で記録
Vector speed;//移動している場合は速度をセット
};
//球体を記録する構造体
struct Ball2D{
Point2D position;
float hankei;//半径
};
//四角形を記録する構造体
struct Rect2D{
Point2D lefttop;
Point2D rightbottom;
float width;
float height;
};


//ライブラリ関数
Point2D PosInView(Point2D in);
int XInView(float inx);
int YInView(float iny);
void ScrollToLeft(float jikiposx);
void ScrollToRight(float jikiposx);
void ScrollToUp(float jikiposy);
void ScrollToDown(float jikiposy);
void DrawLineInView(float x1, float y1, float x2, float y2, int Color, int Thickness);
void DrawCircleInView(float x, float y, float r, int Color, int FillFlag);
void DrawAnimation(float x, float y, double ExtRate, double Angle,int TurnFlag,
int *imgarray, int allframe, float fps);
//ベクトル関数
Vector CreateVector(Vector in, float veclen);
Vector AddVector(Vector v1, Vector v2);
Vector SubVector(Vector v1, Vector v2);
Vector AddVectorInFrameTime(Vector pos, Vector speed);
Vector AddVectorInFrameTime2(Vector pos, Vector speed, Vector accel);
Vector Normalize(Vector in);
Vector RotateVector(Vector in, float radian);
float VectorLengthSquare(Vector in);
float DotProduct(Vector v1, Vector v2);
float CrossProduct(Vector v1, Vector v2);
void SetLine2DKatamuki(Line2D *in);
void DrawLine2D(Line2D in, int Color, int Thickness);
void DrawBall2D(Ball2D in, int Color, int Fill);
//当たり判定関数
bool HitTestLineAndBall(Line2D linein, Ball2D ballin);
bool IsPointAtLineFace(Line2D linein, Point2D ptin);
bool HitTestLineAndLine(Line2D line1, Line2D line2);
bool HitTestBallAndBall(Ball2D a, Ball2D b);
bool HitTestPointAndBox(Rect2D rect, Point2D pt);
//タイマー関数
void SetSimpleTimer(int idx, int time);
int GetPassedTime(int idx);


//グローバル変数
extern float g_frametime;
extern Rect2D g_framerect;//画面領域(当たり判定)
extern Point2D g_current_field_pos;//現在の左上座標
extern Rect2D g_stagesize;//ステージサイズ

//定数宣言
const float ZEROVALUE = 1e-10f;
const float PIE = 3.1415926f;
const int SCROLL_LIMIT = 200;
----------------------------------------------------------------
 エラー内容
1>myhelper.obj : error LNK2019: 未解決の外部シンボル "void __cdecl MyMain(void)" (?MyMain@@YAXXZ) が関数 _WinMain@16 で参照されました
1>C:\Documents and Settings\Owner\My Documents\Visual Studio 2008\Projects\my\Debug\my.exe : fatal error LNK1120: 外部参照 1 が未解決です
1>my - エラー 2、警告 0
ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ
----------------------------------------------------------------
画像を貼り付けときます
(見えにくい場合→http://www.dotup.org/uploda/www.dotup.org154142.jpg.html)
初心者なのでわかりやすくお願いします

Microsoft Visual Studio 2008
Version 9.0.21022.8 RTM
Microsoft .NET Framework
Version 3.5 SP1
----------------------------------------------------------------
新しいプリジェクト→Win32 コンソール アプリケーション(ソリューションのディレクトリを作成 チェック外す)→Windows アプリケーション(空のプロジェクト チェック外す)
----------------------------------------------------------------
 プログラム

 mymain.cpp
#include "myhelper.h"
#include "mymain.h"

//自...続きを読む

Aベストアンサー

ファイル構成から推測するに
mymain.cpp というファイルに
void MyMain(void) {
// ここに処理を書く
}
という関数が必要なようです。

Qビル・ゲイツはどうやってWINDOWSを作ったの?

WINDOWSのようなOSを作るにはどうしたらいいのでしょう?たとえば、MACでWINDOWSと同じ、もしくはそっくりなOSを作るには何が必要なんでしょう?高度な知識や時間なんてのは無しですよ(^_^)
それと、プログラミングにはやっぱりソフトが必要なんでしょうか?じゃあ、そのプログラミングソフトはどうやってできたんでしょう?
私、初心者の為、専門用語などは理解できませんので、その点踏まえてお答えいただけるとありがたいです。

Aベストアンサー

ひとつの答えかたとして数百万行のソースコードを書いて作った。
WindowsCEで150万行、XPの早大等に公開したのが500万行と言われています。

基本的に、これらはC言語とそこから派生進化した
C++言語やC#言語によって書かれています。

CやC++はMS版の開発環境もありますが、言語仕様そのものは
Microsoftで作られたものではありません。
しかし、MS CやVisual C++等の開発環境が
C言語による開発を促進したのは事実です。


MacOSとWindowsを比較した上でのWindowsと
同じないし、そっくりなOSを作る方法は
模倣を繰り返すしか無いでしょう。
あるいは技術を買い取ったり提携する。

技術的には非公開の技術の完全互換は不可能だし
技術仕様を知るためには膨大な費用がかかる。
現実的にはできないし、ナンセンスだと言える。

また、"WindowsのようなOS"の定義を
Windows用しかないような各種アプリケーションが動くOS
と考えた場合には、それはPowerPCのMacintoshでは不可能。

CPUの違いを吸収する仕組みを作ったとしても
それは、大幅に速度低下を招き、また完全な互換性確保は難しい。
むしろ、VirtulPC上でWindowsを動かすほうが楽。

ひとつの答えかたとして数百万行のソースコードを書いて作った。
WindowsCEで150万行、XPの早大等に公開したのが500万行と言われています。

基本的に、これらはC言語とそこから派生進化した
C++言語やC#言語によって書かれています。

CやC++はMS版の開発環境もありますが、言語仕様そのものは
Microsoftで作られたものではありません。
しかし、MS CやVisual C++等の開発環境が
C言語による開発を促進したのは事実です。


MacOSとWindowsを比較した上でのWindowsと
同じないし、そっくりなOSを作...続きを読む

QVC++から引数付きexeファイルの実行

タイトルの通り、VC++から外部ファイルを実行したいのですがどのような関数を使えばよいのでしょうか?
exeファイルを実行中は親プロセスであるVCのプログラムの方を止めておきたいのです。
出来ればexeファイルは引数付きで実行したいと思いますので、よろしくお願いします。
開発環境はVisualStudio2005です。

Aベストアンサー

#1です。こちらで作成したサンプルです。
呼び出し側
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
intret;
printf("system試験開始\n");
ret = system("C:\\VCSTUDY\\printarg\\Debug\\printarg.exe XXX YYY ZZZ");
if (ret == 0){
printf("system成功\n");
}else{
printf("system失敗\n");
}
return 0;
}
----------------------

呼び出される側(c:\\test.exeに相当)
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
inti;
for (i = 0; i < argc; i++){
printf("ARGV[%d]=%s\n",i,argv[i]);
}
return 0;
}
以下、実行結果です。
コマンドプロンプト画面に下記の文字が出力されます。
------------------------
system試験開始
ARGV[0]=C:\VCSTUDY\printarg\Debug\printarg.exe
ARGV[1]=XXX
ARGV[2]=YYY
ARGV[3]=ZZZ
system成功
Press any key to continue
---------------------------

#1です。こちらで作成したサンプルです。
呼び出し側
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
intret;
printf("system試験開始\n");
ret = system("C:\\VCSTUDY\\printarg\\Debug\\printarg.exe XXX YYY ZZZ");
if (ret == 0){
printf("system成功\n");
}else{
printf("system失敗\n");
}
return 0;
}
----------------------

呼び出される側(c:\\test.exeに相当)
#include "stdafx.h"
int _tmain(int argc, _TCHAR* argv[])
{
inti;
for (i = 0; i < argc; i++){
p...続きを読む

QC++で、テキストファイルを一行ずつ読み込んで配列に入れたいのですが、

C++で、テキストファイルを一行ずつ読み込んで配列に入れたいのですが、うまくできません!

テキストには -3.0
       1.0
       2.0

・・・などのように一行に一つの数値が入って縦に並んでいます。
それをひとつずつ読み込み、新しい配列(たとえばa[])に順番にいれたいのです。

a[1]=-3.0,a[2]=1.0、・・・と
なるように。

どうか、この初心者にご指導お願いいたします。

Aベストアンサー

fgetsは文字列として読み込みます。これを数値に変換すれば、とりあえずあなたが望んでいることができます。変換はatofを使います。また、atofを使用するときは#include <stdlib.h>が必要です。
例えば
#include <stdlib.h>
  :
double d;
  :
d=atof("-3.0");
とすると、文字列の-3.0が数値の-3.0に変換されdに入ります。

fscanf関数で読み込んでもできますが、書式とデータがあっていないと上手くいかないので注意してください。

QC言語 配列の長さの上限

C言語で配列Array[N]の長さNの上限っていくらなんでしょうか?
もし可能なのであれば上限を2147483647にしたいのですが、方法を教えてください。

Aベストアンサー

そもそもWindowsの32bit版はアプリが仮想メモリ空間を2GBしか使えません。2GBを超えるには64bit版が必要です。
たとえ64bit版OSだとしても添え字が2147483647って、単純なintの配列だとしても4x2147483647=8GB必要ですね。実メモリ16GBとかのPCを用意しますか?
そもそも配列で2147483647個必要なアルゴリズムに問題ありだと思います。

Qボタンの表示の色、フォントを変更したい

VC++でプログラミングしています。
MFCのダイアログベースのEXEを造っています。
ダイアログにはボタンとエディットボックスを貼り付けています。
私がやりたいのは以下のことです。

・ボタンの色を設定したい
・ボタン、エディットボックスに表示する文字の色を設定したい
・ボタン、エディットボックスに表示する文字のフォント(サイズ)を設定したい

プロパティでサイズ変更すると全体に反映されてしまうので、個々の
コントロールについて制御したいと思っています。

ヘルプで調べて、それらしい関数を見つけるのですが使い方がわかりません。
VCを始めたばかりで、クラスの理解がまだ浅いです。。。
関数の説明は理解できても、「じゃあ、コードはどう書くの?」という状態です。
「○○ は ×× のメンバではありません」と、よく怒られてます。。。

識者の方、ご教授願います。
コードがどうなるのか知りたいので、簡単なサンプルコードがあると助かります。

また、質問ではないのですが、「この関数は○○をする」というのではなく、
「○○をするにはこの関数を使う」という様に調べられる、お勧めの書籍、
Webなどがありましたら教えてください。
今後の勉強に役立てたいと思っています。

VC++でプログラミングしています。
MFCのダイアログベースのEXEを造っています。
ダイアログにはボタンとエディットボックスを貼り付けています。
私がやりたいのは以下のことです。

・ボタンの色を設定したい
・ボタン、エディットボックスに表示する文字の色を設定したい
・ボタン、エディットボックスに表示する文字のフォント(サイズ)を設定したい

プロパティでサイズ変更すると全体に反映されてしまうので、個々の
コントロールについて制御したいと思っています。

ヘルプで調べ...続きを読む

Aベストアンサー

下2つについては以下でいけると思います。

class CMyDlg : CDialog
{
public:

  CFont m_cFont; //Dlgクラスのメンバとして用意
/*
  他のメンバ
*/
  virtual BOOL OnInitDialog(); //初期化

};


BOOL CMyDlg::OnInitDialog()
{
  //TODO:ここでFontを設定しておく(文字の色、サイズなど)

  //Fontを設定
  ((CButton *)GetDlgItem(IDC_BUTTON))->SetFont(&m_cFont,TRUE);

  //TODO:その他の初期化

  return TRUE;
}
//見易さのために、全角スペースを使っています;;

一番上はBitmapを貼り付けるか、CWndのメンバ関数を使って
塗りつぶすかどうかだと思います。

MFCではなく、C++Builderのページなのですが、少しいじればMFCでも使えるので、参考URLに示しておきます。

参考URL:http://market.agr.tottori-u.ac.jp/ken/tech.html

下2つについては以下でいけると思います。

class CMyDlg : CDialog
{
public:

  CFont m_cFont; //Dlgクラスのメンバとして用意
/*
  他のメンバ
*/
  virtual BOOL OnInitDialog(); //初期化

};


BOOL CMyDlg::OnInitDialog()
{
  //TODO:ここでFontを設定しておく(文字の色、サイズなど)

  //Fontを設定
  ((CButton *)GetDlgItem(IDC_BUTTON))->SetFont(&m_cFont,TRUE);

  //TODO:その他の初期化

  return TRUE;
}
//見易さのために、全角スペースを使って...続きを読む


人気Q&Aランキング