No.1ベストアンサー
- 回答日時:
こんにちは。
「フォントの点滅」とは、リアルタイムにフォントが点滅すると言う事でしょうか(ゲームみたいに)。
手法の良し悪しは別として、OnTimer()でセルのフォント色を交互に切り替えれば、簡単に表現出来ます。以下参考程度に。
//ヘッダに以下のメンバ変数を追加
class CTestDlg
{
bool m_bBlink;//点滅フラグ
CArray<CPoint, CPoint&> m_ptArray;//セル位置の配列
CMSFlexGridm_flexGrid;
};
//ウィンドウやダイアログの初期化
BOOL CTestDlg::OnInitDialog()
{
//セル初期化用の使い捨て構造体
struct CInitData
{
CInitData(long x, long y, const CString& string) : point(x, y), string(string){}
CPoint point;//セルの位置
CString string;//セルの文字
} data[] =
{
CInitData(1, 1, "点滅テスト1-1"),
CInitData(2, 2, "点滅テスト2-2"),
};
for(int n = 0; n < 2; ++n)
{
m_ptArray.Add(data[n].point);
m_flexGrid.SetTextMatrix(data[n].point.x, data[n].point.y, data[n].string);
}
//取り敢えずタイマーを0.25秒辺りでセット
this->SetTimer(1000, 250, NULL);
};
//タイマー
void CTestDlg::OnTimer(UINT nIDEvent)
{
// TODO: この位置にメッセージ ハンドラ用のコードを追加するかまたはデフォルトの処理を呼び出してください
m_bBlink ^= true;
for(int n = 0; n < m_ptArray.GetSize(); ++n)
{
m_flexGrid.SetCol(m_ptArray[n].x);
m_flexGrid.SetRow(m_ptArray[n].y);
//フォントの白黒点滅
m_flexGrid.SetForeColor(m_bBlink ? 0x0 : 0xffffff);
}
CDialog::OnTimer(nIDEvent);
}
この回答へのお礼
お礼日時:2009/07/04 00:46
ご回答ありがとうございます。
なるほど、OnTimerを用いて文字色を反転させれば良いのですね。
参考にさせていただきます。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/02/18 11:30
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Excel(エクセル) エクセルの数式で教えてください。 3 2023/03/16 11:19
- 会計ソフト・業務用ソフト エクセルの数式で教えてください。 1 2022/06/21 13:15
- Excel(エクセル) エクセルの数式で教えてください。 1 2022/07/08 13:46
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/04/21 08:59
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/15 08:30
- Visual Basic(VBA) エクセル VBA 条件によるセル点滅 お詳しい方 ご教授をお願いします。 Excelファイルにて 現 1 2022/11/03 15:53
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/02 10:20
- Excel(エクセル) Excel マウスなし操作の質問 3 2022/06/04 13:39
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
VBAでユーザーフォームにセル値...
-
EXCEL VBA 文中の書式ごと複写...
-
エクセルVBA 配列からセルに「...
-
C# DataGridViewで複数選択した...
-
【VBA】【ユーザーフォーム_Lis...
-
Excel 範囲指定スクショについ...
-
Excel VBAでCheckboxの名前を変...
-
DataGridViewでグリッド内に線...
-
VBAコードについて教えてくださ...
-
Excelで空白セル直前のセルデー...
-
【VBA】写真の貼り付けコードが...
-
【Excel VBA】一番右端セルまで...
-
Excel UserForm の表示位置
-
グラフの参照元を相対参照で記...
-
Excel VBA 同じ処理を複数回行...
-
【Excel VBA】マクロで書き込ん...
-
DataGridViewで指定したセルの...
-
[Excel VBA] このコードでは行...
-
「Spread」のセルを移動させる...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
Excel UserForm の表示位置
-
Excelで空白セル直前のセルデー...
-
【Excel VBA】一番右端セルまで...
-
EXCEL VBA 文中の書式ごと複写...
-
VBA にて、条件付き書式で背景...
-
特定の色のついたセルを削除
-
【VBA】【ユーザーフォーム_Lis...
-
VBA 複数条件の分岐処理の上手...
-
入力規則のリスト選択
-
【VBA】写真の貼り付けコードが...
-
Excel VBA IF文がうまく動作し...
-
VBAでユーザーフォームにセル値...
-
VBA:日付を配列に入れ別セルに...
-
Excel VBAでCheckboxの名前を変...
-
エクセルの合計を自動で表示さ...
-
関数の引数でrangeを指定したとき
-
複数指定セルの可視セルのみを...
-
DataGridViewでグリッド内に線...
おすすめ情報