Grid Control 1
- ◆プログラム作成ガイド
- ◆プログラムの開始
- ◆初期表示のデザイン
- ◆データの入力方法
- ◆クラスの作り方
- ◆データをメモリーに
- ◆ファイル読み書き
- ◆データの保存方法
- ◆ツリービューマウス右
- ◆画面表示インプリメント
- ◆複数のページ印字
- ◆DLL化する
- ◆エクセル似の入力
サブメニュー
ここに紹介するプログラムは、WIN XP 2003/Windows 7 (32bits) - OS 環境でマイクロソフトのVisual Studio 2010 で作ったものです。
Windows XP/ Windows 7(32bits) での動作は確認済みですが…
VC6で作る基本的なプログラムの作成方法を列記してみる。
-
VCのツールバーで、「プロジェクト」・「プロジェクトへ追加」・「コンポーネントおよびコントロール」「Registed ActiveX Control」を選び
-
「MicrosoftFlexGridControl Version 6.0」を挿入しておく。
-
ダイアログ上の必要な部分にFlexGridを貼り付ける。大きさは適当に配置し、最終的にあとで修正すればよいでしょう。
-
邪魔にならない位置にEditBoxを配置し、そのプロパティーを非表示にしておく。
-
ClassWizardを使いダイアログのOnInitDialog()をオーバーライドする。
-
GridControlの表示する列・行などの初期設定をこのOnInitDialog( )にコーディングする。
以下は、サンプルである。
BOOL CWallDlg::OnInitDialog()
// ダイアログの初期設定を行う
{
CDialog::OnInitDialog();
CGridControl gc; // 行と列の体裁を定義する外部クラス
//-----------Grid の初期設定
m_nInitia_maxrow = 17;
// 初期最大表示行設定
m_nCols = 7;
m_nData = 0;
m_nMaxRow = m_nInitia_maxrow;
m_nTopRow = 1;
m_nFixedRows = 1;
m_nFixedCols = 1;
m_rc.y = 0;
m_rc.x = 0;
gc.SetGridStyle( m_grid, m_nMaxRow, m_nCols ); //全体の行と列を設定
gc.SetTitle_N(
m_grid, m_nFixedRows, m_nFixedCols );
// GridのタイトルNo.固定行と色を設定
SetTitle( m_grid );
m_grid.SetColSel( 1 ); // セルの選択する個数指定
m_rc.y = GetWallData( m_nFixedRows, m_nFixedCols ); //
既存のデータ読み込み
m_rc =
gc.SetSelectedCel( &m_grid, m_nMaxRow, m_rc.y, 1 ); //
デフォルトのセル位置
m_ctrWallDataInput.SetFocus( );//
強制的にグリッドに入力させる為EditBoxにフォーカスを設定する
EditBoxRedraw( &m_grid, &m_rc );
ChangeUnit( );
return FALSE; // コントロールにフォーカスを設定しないとき、戻り値は TRUE となります
// 例外: OCX プロパティ ページの戻り値は FALSE となります
}
見かけが悪い為、エデットボックスを非表示とすると、最初にグリッドをマウスでクリックしないとフォーカスがエデットボックスに移動できい。
これは、ダイアログの OnInitDialoge( ) 関数の戻り値を FALSEにすることで EditBox に強制的にフォーカスを移動することで解決でる。
ページ先頭に戻る
最終更新日: 2020/02/04