1 回答

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超3個(gè)贊
看來這個(gè)行為——是否需要按FN,與安裝該應(yīng)用程序的設(shè)備有關(guān)。當(dāng)我在PC上運(yùn)行時(shí),我只需要按F3,但它需要在表面上按FN。如果你還想改變它,我在下面有一個(gè)解決方法,您可以在頁(yè)面(例如MainPage)上注冊(cè)加速器事件。
public MainPage()
{
this.InitializeComponent();
Window.Current.Dispatcher.AcceleratorKeyActivated += AccelertorKeyActivedHandle;
}
private void AccelertorKeyActivedHandle(CoreDispatcher sender, AcceleratorKeyEventArgs args)
{
if (args.EventType.ToString().Contains("Down"))
{
if (args.VirtualKey == Windows.System.VirtualKey.F3)
{
// do something you want
}
}
}
UWP應(yīng)用程序窗口最小化時(shí),當(dāng)前窗口沒有焦點(diǎn),因此設(shè)置的快捷鍵不會(huì)響應(yīng)。但系統(tǒng)有默認(rèn)的快捷鍵(例如Fn + F11)可以播放或暫停媒體。如果你想響應(yīng)系統(tǒng)快捷鍵,需要允許backgroundMediaPlayback。你可以嘗試一下官方的demo,也可以通過鍵盤自帶的媒體按鈕來控制。
更新:
根據(jù)官方示例,如果要使用MediaElement來播放,需要設(shè)置MediaPlay和MediaPlaybackList來綁定播放列表。這樣的話,似乎可以通過系統(tǒng)默認(rèn)的快捷鍵來控制。實(shí)際上起作用的是MediaPlayer。對(duì)于更詳細(xì)的信息,還需要閱讀官方demo。
XAML:
<MediaElement Name="mediaPlayerElement"
AreTransportControlsEnabled="True"
Stretch="UniformToFill" Height="100" Width="400">
隱藏代碼:
private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
var source = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/xxx"));
// Create a configurable playback item backed by the media source
var playbackItem = new MediaPlaybackItem(source);
MediaPlayer player = new MediaPlayer();
MediaPlaybackList lists = new MediaPlaybackList();
lists.Items.Add(playbackItem);
player.Source = lists;
}
- 1 回答
- 0 關(guān)注
- 204 瀏覽
添加回答
舉報(bào)