mcpField
S
syncfusion-winforms-statusbaradv-panel

syncfusion-winforms-statusbaradv-panel

github.com/syncfusionデザイン・UI276 回インストール1 週間前に更新
リポジトリ

syncfusion-winforms-statusbaradv-panel について

Windows Forms 開発者向けの、Syncfusion StatusBarAdvPanel の実装ガイドです。キー状態や日時の定型表示、マーキーアニメーションなど、パネルの内容と外観の設定を扱います。

主な機能

  1. 01カスタムテキスト、キー状態、日時の表示
  2. 02グラデーション、パターン、アイコン、枠線の設定
  3. 03スクロール、スライド、交互アニメーションの設定
  4. 04コンテンツとフローレイアウトの配置
  5. 05パネルの自動サイズ調整とプロパティイベント処理

活用シーン

  1. 01ステータスバーに NumLock や CapsLock を表示
  2. 02日付、時刻、現在のカルチャを表示
  3. 03告知をスクロールテキストで表示
  4. 04アプリのテーマに合わせたパネルのスタイル設定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/syncfusion/winforms-ui-components-skills --skill syncfusion-winforms-statusbaradv-panel

インストール後、Claude Code で/syncfusion-winforms-statusbaradv-panelを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
alignment-and-borders.md
appearance-styling.md
getting-started.md
panel-types-and-behavior.md
text-and-marquee.md
themes-tooltips-events.md

詳細

ステータスバーのパネルを実装する(StatusBarAdvPanel)

このスキルでは、Windows Forms アプリケーションで Syncfusion StatusBarAdvPanel コントロールを実装する方法を説明します。StatusBarAdvPanel はパネルを継承したクラスで、外観を強化したステータスバー情報を表示し、マーキーアニメーションにも対応しています。StatusBarAdv コントロール内でも、フォーム上に単独でも使用できます。

このスキルを使用する場面

次のような場合に、このスキルを使用します。

  • カスタムコンテンツやスタイルを設定した個別のステータスバーパネルを作成する
  • 主要な状態インジケーター(NumLock、CapsLock、ScrollLock、Insert キー)を表示する
  • さまざまな形式(短い日付、長い日付、短い時刻、長い時刻)で日付と時刻の情報を表示する
  • ステータスバーにカルチャ情報(CurrentCulture)を表示する
  • スクロール、スライド、交互表示のエフェクトでマーキーテキストのアニメーションを実装する
  • ステータスバーパネルにグラデーション背景やパターンを適用する
  • StatusBarAdv 内やフローレイアウトでのパネルの配置を設定する
  • 個々のパネルにカスタム境界線(2D または 3D)を追加する
  • 動的なパネル更新のためのプロパティ変更イベントを処理する
  • アプリケーションのデザインに合わせたテーマ付きステータスバーパネルを作成する

コンポーネントの概要

StatusBarAdvPanel は、次の機能を備えたステータスバー用の多目的パネルコントロールです。

  • パネルの種類:キーの状態、日付と時刻、カルチャ、またはカスタムテキスト用の定義済みタイプ
  • マーキーアニメーション:速度、方向、スタイルをカスタマイズできるスクロールテキスト
  • 強化された背景:BrushInfo を使用したグラデーション、パターン、単色のオプション
  • アイコンのサポート:パネルのテキストと並べてアイコンを表示
  • 配置オプション:コンテンツの配置(左、右、中央)とフロー配置(両端揃えを含む)
  • 境界線のカスタマイズ:色をカスタマイズできる 2D および 3D の境界線スタイル
  • 自動サイズ調整:コンテンツに応じて自動的にサイズを変更(SizeToContent)
  • テーマのサポート:ThemesEnabled および IgnoreThemeBackground プロパティ
  • ツールチップのサポート:追加情報を提供するツールチップを追加
  • 18 種類のプロパティイベント:プロパティ変更を包括的に処理するイベント

アセンブリ: Syncfusion.Tools.Windows
依存関係: Syncfusion.Shared.Base、Syncfusion.Tools.Windows
名前空間: Syncfusion.Windows.Forms.Tools

ドキュメントとナビゲーションガイド

はじめに

📄 参照: references/getting-started.md

参照するタイミング: StatusBarAdvPanel を初めて実装するとき、アセンブリを設定するとき、または基本的なパネルを作成するとき。

  • アセンブリの要件とインストール
  • ドラッグアンドドロップによるデザイナーでのセットアップ
  • プログラムによる作成と初期化
  • StatusBarAdv またはフォームへのパネルの追加
  • 基本的な設定(Location、Size、BackgroundColor)
  • PanelType と BorderColor の設定
  • よくあるセットアップの問題のトラブルシューティング
パネルの種類と動作

📄 参照: references/panel-types-and-behavior.md

参照するタイミング: パネルの種類を設定するとき、キーの状態や日付と時刻を表示するとき、またはパネルのサイズをカスタマイズするとき。

  • PanelType プロパティのオプション(キーの状態、日付と時刻、カルチャ、カスタム)
  • キーの状態インジケーター(NumLock、CapsLock、ScrollLock、InsertKey)
  • 日付と時刻の形式(ShortDate、LongDate、ShortTime、LongTime)
  • Text プロパティを使用したカスタムテキストパネル
  • キーの状態テキストを取得する GetText() メソッド
  • パネルのサイズを自動調整する SizeToContent
  • PreferredSize プロパティの設定
外観とスタイル

📄 参照: references/appearance-styling.md

参照するタイミング: パネルの外観をカスタマイズするとき、グラデーションを適用するとき、背景色を設定するとき、またはアイコンを追加するとき。

  • BrushInfo を使用した BackgroundColor プロパティ
  • グラデーションスタイル(6 種類:ForwardDiagonal、BackwardDiagonal、Horizontal、Vertical、PathRectangle、PathEllipse)
  • パターンスタイル(Cross、DiagonalCross、DottedGrid、LargeGrid、Wave)
  • GradientBackground と GradientColors の設定
  • BackColor と ForeColor のカスタマイズ
  • パネルアイコン用の Icon プロパティ
  • スタイル設定の完全な例
テキストとマーキーアニメーション

📄 参照: references/text-and-marquee.md

参照するタイミング: マーキーテキストアニメーションを実装する場合、スクロール効果を設定する場合、またはアニメーションの動作を制御する場合。

  • Text プロパティの設定
  • アニメーションを有効にする IsMarquee プロパティ
  • タイミングを制御する AnimationDelay
  • AnimationDirection(Left/Right)
  • AnimationSpeed のカスタマイズ
  • AnimationStyle(Scroll、Slide、Alternate)
  • StartAnimation() および StopAnimation() メソッド
  • マーキーの完全な使用例
配置と境界線

📄 参照: references/alignment-and-borders.md

参照するタイミング: パネルの配置を設定する場合、境界線をカスタマイズする場合、またはフローレイアウトの位置を設定する場合。

  • Alignment プロパティ(Left、Right、Center)
  • フローレイアウト用の HAlign プロパティ(Left、Right、Center、Justify)
  • BorderStyle プロパティ(None、FixedSingle、Fixed3D)
  • Border3DStyle のオプション(10 種類のスタイル)
  • 2D 境界線の BorderColor
  • BorderSingle のスタイル(Solid、Dashed、Dotted、Inset、Outset、None)
  • BorderSides の設定(Left、Top、Right、Bottom、Middle、All)
  • 2D および 3D 境界線の使用例
テーマ、ツールチップ、イベント

📄 参照: references/themes-tooltips-events.md

参照するタイミング: テーマを実装する場合、ツールチップを追加する場合、またはプロパティ変更イベントを処理する場合。

  • ThemesEnabled プロパティ
  • IgnoreThemeBackground プロパティ
  • ToolTip プロパティの設定
  • 18 種類のプロパティ変更イベント
  • イベントのサブスクライブ例
  • イベント処理のパターン
  • イベント監視の完全な使用例

クイックスタートの例

グラデーション背景を使用した基本的な StatusBarAdvPanel

C#:

using Syncfusion.Windows.Forms.Tools;
using Syncfusion.Drawing;
using System.Drawing;
using System.Windows.Forms;

public partial class MainForm : Form
{
    private StatusBarAdvPanel statusBarAdvPanel1;
    
    public MainForm()
    {
        InitializeComponent();
        SetupStatusBarPanel();
    }
    
    private void SetupStatusBarPanel()
    {
        // Create StatusBarAdvPanel
        statusBarAdvPanel1 = new StatusBarAdvPanel
        {
            // Set panel location and size
            Location = new Point(160, 184),
            Size = new Size(216, 48),
            
            // Configure panel type to show long date
            PanelType = StatusBarAdvPanelType.LongDate,
            
            // Apply gradient background
            BackgroundColor = new BrushInfo(
                GradientStyle.BackwardDiagonal, 
                Color.PaleVioletRed, 
                Color.PeachPuff
            ),
            
            // Set border and alignment
            BorderColor = Color.Black,
            HAlign = HorzFlowAlign.Left
        };
        
        // Add to form
        this.Controls.Add(statusBarAdvPanel1);
    }
}

VB.NET:

Imports Syncfusion.Windows.Forms.Tools
Imports Syncfusion.Drawing
Imports System.Drawing
Imports System.Windows.Forms

Public Partial Class MainForm
    Inherits Form
    
    Private statusBarAdvPanel1 As StatusBarAdvPanel
    
    Public Sub New()
        InitializeComponent()
        SetupStatusBarPanel()
    End Sub
    
    Private Sub SetupStatusBarPanel()
        ' Create StatusBarAdvPanel
        statusBarAdvPanel1 = New StatusBarAdvPanel With {
            .Location = New Point(160, 184),
            .Size = New Size(216, 48),
            .PanelType = StatusBarAdvPanelType.LongDate,
            .BackgroundColor = New BrushInfo(
                GradientStyle.BackwardDiagonal, 
                Color.PaleVioletRed, 
                Color.PeachPuff
            ),
            .BorderColor = Color.Black,
            .HAlign = HorzFlowAlign.Left
        }
        
        ' Add to form
        Me.Controls.Add(statusBarAdvPanel1)
    End Sub
End Class

よくあるパターン

パターン 1:スクロールテキストを表示するマーキーパネル

マーキースクロールテキストを表示するアニメーションステータスパネルを作成します。

// Configure marquee panel
var marqueePanel = new StatusBarAdvPanel
{
    Text = "Welcome to our application! Latest updates available...",
    IsMarquee = true,
    AnimationStyle = MarqueeStyle.Scroll,
    AnimationDirection = MarqueeDirection.Left,
    AnimationSpeed = 5,
    AnimationDelay = 10,
    Size = new Size(300, 30),
    BackColor = Color.LightBlue
};

// Start animation on form load
marqueePanel.StartAnimation();

// Stop animation when needed
// marqueePanel.StopAnimation();
パターン 2:キー状態インジケーターパネル

キーボードのキー状態を表示するパネルを作成します。

// NumLock indicator
var numLockPanel = new StatusBarAdvPanel
{
    PanelType = StatusBarAdvPanelType.NumLockState,
    Size = new Size(80, 24),
    HAlign = HorzFlowAlign.Right,
    BackgroundColor = new BrushInfo(Color.WhiteSmoke)
};

// CapsLock indicator
var capsLockPanel = new StatusBarAdvPanel
{
    PanelType = StatusBarAdvPanelType.CapsLockState,
    Size = new Size(80, 24),
    HAlign = HorzFlowAlign.Right,
    BackgroundColor = new BrushInfo(Color.WhiteSmoke)
};

// InsertKey indicator
var insertKeyPanel = new StatusBarAdvPanel
{
    PanelType = StatusBarAdvPanelType.InsertKeyState,
    Size = new Size(80, 24),
    HAlign = HorzFlowAlign.Right,
    BackgroundColor = new BrushInfo(Color.WhiteSmoke)
};
パターン 3:3D 効果を備えたカスタム境界線

パネルにカスタム 3D 境界線を適用します。

// Create panel with 3D raised border
var borderedPanel = new StatusBarAdvPanel
{
    Text = "Status: Ready",
    Size = new Size(150, 30),
    BorderStyle = BorderStyle.Fixed3D,
    Border3DStyle = Border3DStyle.RaisedInner,
    BorderSides = Border3DSide.All,
    Alignment = HorizontalAlignment.Center,
    BackgroundColor = new BrushInfo(
        GradientStyle.Horizontal,
        Color.LavenderBlush,
        Color.RosyBrown
    )
};

主なプロパティ

StatusBarAdvPanel のプロパティ
プロパティ型説明
PanelTypeStatusBarAdvPanelTypeパネルの種類(Custom、NumLockState、CapsLockState、ScrollLockState、InsertKeyState、ShortDate、LongDate、ShortTime、LongTime、CurrentCulture)
Textstringパネルに表示されるテキスト(Custom パネルタイプの場合)
BackgroundColorBrushInfo背景のグラデーション、パターン、または単色
IconIconパネルに表示されるアイコン
AlignmentHorizontalAlignmentテキストとアイコンの配置(Left、Right、Center)
HAlignHorzFlowAlignフローレイアウトでの水平配置(Left、Right、Center、Justify)
IsMarqueeboolマーキー形式のテキストアニメーションを有効にします
AnimationStyleMarqueeStyleアニメーションスタイル(Scroll、Slide、Alternate)
AnimationDirectionMarqueeDirectionアニメーションの方向(Left、Right)
AnimationSpeedintマーキーアニメーションの速度
AnimationDelayintアニメーション開始までの遅延
BorderStyleBorderStyle境界線のスタイル(None、FixedSingle、Fixed3D)
Border3DStyleBorder3DStyle3D 境界線のスタイル(10 種類のオプション)
BorderColorColor2D 境界線の色
BorderSingleButtonBorderStyle2D 境界線のスタイル(Solid、Dashed、Dotted など)
BorderSidesBorder3DSide表示する境界線の辺(All、Top、Bottom、Left、Right、Middle)
SizeToContentboolコンテンツに合わせてパネルを自動サイズ変更します
PreferredSizeSizeフローレイアウトでの推奨サイズ
ThemesEnabledboolテーマに沿った外観を有効にします
IgnoreThemeBackgroundboolテーマの背景色を無視します
ToolTipstringパネルのツールチップテキスト

一般的な使用例

  1. アプリケーションの状態表示:カスタムテキストとスタイルで、現在のアプリケーションの状態を表示します
  2. キーボードの状態インジケーター:NumLock、CapsLock、ScrollLock、Insert キーの状態を表示します
  3. 日付と時刻の情報:さまざまな形式で現在の日付と時刻を表示します
  4. カルチャ情報:現在のカルチャ設定を表示します
  5. マーキー形式のお知らせ:お知らせや更新情報をスクロール表示します
  6. 進行状況インジケーター:処理状況を示すテキストを含むカスタムパネルを表示します
  7. ドキュメント情報:ドキュメント関連の情報(行番号、位置など)を表示します
  8. テーマに合わせたステータスパネル:パネルのスタイルを統一し、アプリケーションのテーマに合わせます

その他のリソース

StatusBarAdvPanel の詳細については、以下をご覧ください。

  • StatusBarAdv コントロール内で使用し、ステータスバーを拡張します
  • 複数の種類のパネルを組み合わせて、包括的なステータス表示を実現します
  • イベントを活用し、アプリケーションの状態に応じてパネルを動的に更新します
  • すべてのパネルに一貫したテーマを適用し、プロフェッショナルな外観にします

コメント