1

フォームにWindowsMediaコントロールを追加し、フルスクリーン状態の場合を除いて完全に使用できるようになりました。アプリケーション内の主要なイベントを介して、コントロールのどの側面も操作できないようです。私の現在の目標は、「esc」キーを押し下げて全画面表示を終了することです。そこからもっとできる。

何かアイデアがあれば教えてください!

ありがとう、ケビン

4

1 に答える 1

2

私はかつてこのコードをどこかで見つけてかなりうまく機能しましたが、どこから入手したか覚えていません。

    public partial class WMForm : Form,IMessageFilter

{

    public WMForm()

    {

        InitializeComponent();

    }



    private void WMForm_Load(object sender, EventArgs e)

    {

        this.MyWindowsMediaPlayer.URL = @"YourFilePath/Url";

        Application.AddMessageFilter(this);

    }



    private void WMForm_FormClosing(object sender, FormClosingEventArgs e)

    {

        Application.RemoveMessageFilter(this);

    }



    #region IMessageFilter

    private const UInt32 WM_KEYDOWN = 0x0100;

    public bool PreFilterMessage(ref Message m)

    {

        if (m.Msg == WM_KEYDOWN)

        {

            Keys keyCode = (Keys)(int)m.WParam & Keys.KeyCode;

            if (keyCode == Keys.Escape)

            {

                this.MyWindowsMediaPlayer.fullScreen = false;

            }

            return true;

        }

        return false;

    }

    #endregion

}
于 2012-06-02T00:21:52.513 に答える