MSFlexGridを使う

MSFlexGridの情報が少ないのでまとめてみる。といっても情報が少ないのでたいしたことはかけないが・・・

プロジェクトに追加する

メニューから[プロジェクト]-[プロジェクトへ追加]-[コンポーネントおよびコントロール]を選択する。
コンポーネントおよびコントロール ギャラリ が起動する。
Registered ActiveX Controlsを開き、Microsoft FlexGrid Controlを選択し、挿入する。
挿入し終わると、プロジェクトに、
4つのクラスが追加される。
あと、リソースエディタでダイアログを編集する際に表示されるツールバーにも、MSFlexGridが追加される。

使う

ダイアログテンプレートにMSFlexGridを貼り付け、ダイアログのクラスかCFrameViewのクラスを作成します。
通常のCViewでMSFlexGridを利用しようとしてもなぜかメッセージがこないので、この方法をとるしかない(俺がへぼいだけかも)
あとは普通に使えます。ただし、関数が多く、使いづらいので注意。ネット上に情報も少ないし。

void SetCellFontUnderline( BOOL bNewValue ) long GetCellWidth( void ) void SetCellPictureAlignment( short nNewValue )
関数一覧
long GetRows( void ) 行の数を取得
void SetRows( long nNewValue ) 行の数を指定
long GetCols( void ) 列の数を取得
void SetCols( long nNewValue ) 列の数を指定
long GetFixedRows( void ) 固定行の数を取得
void SetFixedRows( long nNewValue ) 固定行の数を指定
long GetFixedCols( void ) 固定列の数を取得
void SetFixedCols( long nNewValue ) 固定列の数を指定
short GetVersion( void ) バージョンを取得する
CString GetFormatString( void ) タイトル文字列を取得
void SetFormatString( LPCTSTR lpszNewValue ) タイトル文字列を取得
long GetTopRow( void ) 表示されている最初の行のインデックスを取得
void SetTopRow( long nNewValue ) 表示する最初の行のインデックスを指定
long GetLeftCol( void ) 表示されている最初の列のインデックスを取得
void SetLeftCol( long nNewValue ) 表示されている最初の列のインデックスを指定
long GetRow( void ) カレントセルの行を取得
void SetRow( long nNewValue ) カレントセルの行を指定(範囲指定の終端の行もこの値となる)
long GetCol( void ) カレントセルの列を取得
void SetCol( long nNewValue ) カレントセルの列を指定(範囲指定の終端の列もこの値となる)
long GetRowSel( void ) 範囲指定の終端の行を取得(範囲指定がない場合、GetRowと同じ)
void SetRowSel( long nNewValue ) 範囲指定の終端の行を指定
long GetColSel( void ) 範囲指定の終端の列を取得(範囲指定がされていない場合、GetColと同じ)
void SetColSel( long nNewValue ) 範囲指定の終端の列を指定
CString GetText( void ) カレントセルの文字列を取得
void SetText( LPCTSTR lpszNewValue ) カレントセルの文字列を指定
unsigned long GetBackColor( void ) セルの背景色を取得
void SetBackColor( unsigned long newValue ) セルの背景色を指定
unsigned long GetForeColor( void ) フォントの色を取得
void SetForeColor( unsigned long newValue ) フォントの色を指定
unsigned long GetBackColorFixed( void ) 固定行および固定列の色を取得
void SetBackColorFixed( unsigned long newValue ) 固定行および固定列の色を指定
unsigned long GetForeColorFixed( void ) 固定行および固定列のフォントの色を取得
void SetForeColorFixed( unsigned long newValue ) 固定行業および固定列のフォントの色を指定
unsigned long GetBackColorSel( void ) カレントセルの背景色を取得
void SetBackColorSel( unsigned long newValue ) カレントセルの背景色を指定
unsigned long GetForeColorSel( void ) カレントセルの文字の色を取得
void SetForeColorSel( unsigned long newValue ) カレントセルの文字の色を指定
unsigned long GetBackColorBkg( void ) グリッドコントロールの外の色を取得
void SetBackColorBkg( unsigned long newValue ) グリッドコントロールの外の色を指定
BOOL GetWordWrap( void ) カレントセルのワードラップの状態を取得
void SetWordWrap( BOOL bNewValue ) カレントセルのワードラップの状態を指定
COleFont GetFont( void ) フォント情報を取得 COleFontからさらにフォント情報を取得
void SetRefFont( LPDISPATCH newValue ) 不明
float GetFontWidth( void ) 不明
void SetFontWidth(float newValue ) 不明
CString GetCellFontName( void ) たぶんフォント名称を取得
void SetCellFontName( LPCTSTR lpszNewValue ) たぶんフォント名称を設定
float GetCellFontSize( void ) 不明
void SetCellFontSize(float newValue ) 不明
BOOL GetCellFontBold( void ) カレントセルのフォントの太文字表示状態を取得
void SetCellFontBold( BOOL bNewValue ) カレントセルのフォントの太文字表示状態を指定
BOOL GetCellFontItalic( void ) カレントセルのフォントの斜体表示状態を取得
void SetCellFontItalic( BOOL bNewValue ) カレントセルのフォントの斜体表示状態を指定
BOOL GetCellFontUnderline( void ) カレントセルのフォントの下線表示状態を取得
カレントセルのフォントの下線表示状態を指定
BOOL GetCellFontStrikeThrough( void ) カレントセルのフォントの打ち消し線表示状態を取得
void SetCellFontStrikeThrough( BOOL bNewValue ) カレントセルのフォントの打ち消し線表示状態を指定
float GetCellFontWidth( void ) カレントセルのフォントの横幅を取得
void SetCellFontWidth(float newValue ) カレントセルのフォントの横幅を指定
long GetTextStyle( void ) 不明
void SetTextStyle( long nNewValue ) 不明
long GetTextStyleFixed( void ) 不明
void SetTextStyleFixed( long nNewValue ) 不明
BOOL GetScrollTrack( void ) スクロールトラックの状態取得 スクロール中に再描画するかしないかということ。
void SetScrollTrack( BOOL bNewValue ) スクロールトラックの状態設定 スクロール中に再描画するかしないかということ。
long GetFocusRect( void )
void SetFocusRect( long nNewValue )
long GetHighLight( void )
void SetHighLight( long nNewValue )
BOOL GetRedraw( void ) 再描画状態取得
void SetRedraw( BOOL bNewValue ) 再描画設定 FALSEならば再描画しないので集中処理が高速
long GetScrollBars( void )
void SetScrollBars( long nNewValue )
long GetMouseRow( void ) マウスが当てられている行番号を取得
long GetMouseCol( void ) マウスが当てられている列番号を取得
long GetCellLeft( void ) セルの左位置の座標を取得、同時にセルを表示領域まで移動
long GetCellTop( void ) セルの上位置の座標を取得、同時にセルを表示領域まで移動
セルの幅を取得、同時にセルを表示領域まで移動
long GetCellHeight( void ) セルの高さを取得、同時にセルを表示領域まで移動
long GetRowHeightMin( void )
void SetRowHeightMin( long nNewValue )
long GetFillStyle( void )
void SetFillStyle( long nNewValue )
long GetGridLines( void ) 罫線のスタイルを取得
void SetGridLines( long nNewValue ) 罫線のスタイルを設定
long GetGridLinesFixed( void ) 固定カラムの罫線のスタイルを取得
void SetGridLinesFixed( long nNewValue ) 固定カラムの罫線のスタイルを設定
unsigned long GetGridColor( void ) セルの基本背景色を取得
void SetGridColor( unsigned long newValue ) セルの基本背景色を設定
unsigned long GetGridColorFixed( void ) 固定カラムの基本背景色を取得
void SetGridColorFixed( unsigned long newValue ) 固定カラムの基本背景色を設定
unsigned long GetCellBackColor( void ) カレントセルの背景色を取得
void SetCellBackColor( unsigned long newValue ) カレントセルの背景色を設定
unsigned long GetCellForeColor( void ) カレントセルの前景色を取得
void SetCellForeColor( unsigned long newValue ) カレントセルの前景色を設定
short GetCellAlignment( void ) カレントセルのアライメントを取得
void SetCellAlignment( short nNewValue ) カレントセルのアライメントを設定
long GetCellTextStyle( void )
void SetCellTextStyle( long nNewValue )
short GetCellPictureAlignment( void ) たぶんセルに表示されたピクチャーのアライメント取得
たぶんセルに表示されたピクチャーのアライメント設定
CString GetClip( void ) 選択範囲にあるテキストをコピー
void SetClip( LPCTSTR lpszNewValue ) 選択範囲にクリップされたテキストを出力
void SetSort( short nNewValue )
long GetSelectionMode( void )
void SetSelectionMode( long nNewValue )
long GetMergeCells( void )
void SetMergeCells( long nNewValue )
BOOL GetAllowBigSelection( void )
void SetAllowBigSelection( BOOL bNewValue )
long GetAllowUserResizing( void )
void SetAllowUserResizing( long nNewValue )
long GetBorderStyle( void )
void SetBorderStyle( long nNewValue )
long GetHWnd( void )
BOOL GetEnabled( void )
void SetEnabled( BOOL bNewValue )
long GetAppearance( void )
void SetAppearance( long nNewValue )
long GetMousePointer( void )
void SetMousePointer( long nNewValue )
CPicture GetMouseIcon( void )
void SetRefMouseIcon( LPDISPATCH newValue )
long GetPictureType( void )
void SetPictureType( long nNewValue )
CPicture GetPicture( void )
CPicture GetCellPicture( void ) カレントセルのピクチャーを取得
void SetRefCellPicture( LPDISPATCH newValue ) ビットマップまたはアイコンをカレントセルに設定する
CString GetTextArray( long index )
void SetTextArray( long index, LPCTSTR lpszNewValue )
short GetColAlignment( long index ) 列アライメントを設定
void SetColAlignment( long index, short nNewValue ) 列の幅を取得
long GetColWidth( long index ) 列の幅を設定
void SetColWidth( long index, long nNewValue ) 行の高さを取得
long GetRowHeight( long index ) 行の高さを設定
void SetRowHeight( long index, long nNewValue )
BOOL GetMergeRow( long index )
void SetMergeRow( long index, BOOL bNewValue )
BOOL GetMergeCol( long index )
void SetMergeCol( long index, BOOL bNewValue )
void SetRowPosition( long index, long nNewValue )
void SetColPosition( long index, long nNewValue )
long GetRowData( long index ) 行に対する汎用情報取得
void SetRowData( long index, long nNewValue ) 行に対する汎用情報設定
long GetColData( long index ) 列に対する汎用情報取得
void SetColData( long index, long nNewValue ) 列に対する汎用情報設定
CString GetTextMatrix( long Row, long Col ) 座標指定テキスト取得
void SetTextMatrix( long Row, long Col, LPCTSTR lpszNewValue ) 座標指定テキスト設定
void AddItem( LPCTSTR Item, const VARIANT& index ) 行追加
void RemoveItem( long index ) 行削除
void Clear( void ) データ削除
void Refresh( void )
CRowCursor GetDataSource( void )
void SetDataSource( LPDISPATCH newValue )
BOOL GetRowIsVisible( long index )
BOOL GetColIsVisible( long index )
long GetRowPos( long index )
long GetColPos( long index )
short GetGridLineWidth( void )
void SetGridLineWidth( short nNewValue )
short GetFixedAlignment( long index ) 固定カラムのアライメント設定を取得
void SetFixedAlignment( long index, short nNewValue ) 固定カラムのアライメント設定を設定
BOOL GetRightToLeft( void )
void SetRightToLeft( BOOL bNewValue )
long GetOLEDropMode( void )
void SetOLEDropMode( long nNewValue )
void OLEDrag( void )

参考サイト

フレックスグリッドコントロール