Vlc.Dotnet Ve Mouseevent'ları Sorunu
-
Merahaba hocalar, bir Wpf uygulamamda şu kütüphaneyi kullanıyorum: https://github.com/ZeBobo5/Vlc.DotNet
Videoyu takır takır oynatıyorum sıkıntı yok. Bir buton belirledim yuvarlak Play simgesi şeklinde, gridde bunu VlcControl.MediaPlayer ile aynı satır ve sütuna yerleştirdim.
Play'e bastıktan sonra videoya hover yapınca stop butonunun gözükmesi gerekiyor ancak olmuyor. Hiçbir mouse event'ı çalışmıyor, video oynarken.
Biraz kodları inceledim, bu linkteki https://github.com/ZeBobo5/Vlc.DotNet/blob/master/src/Vlc.DotNet.Wpf/VlcControl.cs SetParent komutunu comment'leyip derlediğimde "Barındırılan HWND belirtilen üst öğenin bir alt penceresi olmalıdır." hatası alıyorum.
Sizce bu sorunu nasıl çözebilirim?
View.xaml:
<Page x:Class="IKA.Views.CameraView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" xmlns:mui="http://firstfloorsoftware.com/ModernUI" xmlns:cal="http://www.caliburnproject.org" xmlns:model="clr-namespace:IKA.ViewModels" xmlns:wpf="clr-namespace:Vlc.DotNet.Wpf;assembly=Vlc.DotNet.Wpf" d:DesignHeight="300" d:DesignWidth="300" Title="CameraView"> <Grid> <Grid.Resources> <ResourceDictionary> <ResourceDictionary.MergedDictionaries> <ResourceDictionary Source="/Resources/MediaPlayer.xaml" /> </ResourceDictionary.MergedDictionaries> <ControlTemplate x:Key="PlayStyle" TargetType="Button"> <Button Style="{StaticResource PlayButtonStyle}" Width="100" Height="100" HorizontalAlignment="Center" /> </ControlTemplate> <ControlTemplate x:Key="StopStyle" TargetType="Button"> <Button Style="{StaticResource StopButtonStyle}" Width="100" Height="100" HorizontalAlignment="Center" /> </ControlTemplate> </ResourceDictionary> </Grid.Resources> <Grid.RowDefinitions> <RowDefinition Height="*"/> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/> </Grid.RowDefinitions> <Rectangle x:Name="BeforeVideo" Fill="Black" Grid.Row="0" /> <wpf:VlcControl x:Name="myControl" Grid.Row="0"/> <Button x:Name="PlayButton" Grid.Row="0" Click="OnPlayButtonClick" Template="{StaticResource PlayStyle}">Play</Button> <Button x:Name="StopButton" Grid.Row="0" Click="OnStopButtonClick" Template="{StaticResource StopStyle}">Stop</Button> </Grid> </Page>
View.xaml.cs
public partial class CameraView : Page { public CameraView() { InitializeComponent(); myControl.MediaPlayer.VlcLibDirectoryNeeded += OnVlcControlNeedsLibDirectory; myControl.Visibility = Visibility.Hidden; StopButton.Visibility = Visibility.Hidden; } private void OnVlcControlNeedsLibDirectory(object sender, VlcLibDirectoryNeededEventArgs e) { var currentAssembly = Assembly.GetEntryAssembly(); var currentDirectory = new FileInfo(currentAssembly.Location).DirectoryName; if (currentDirectory == null) return; if (AssemblyName.GetAssemblyName(currentAssembly.Location).ProcessorArchitecture != ProcessorArchitecture.X86) { e.VlcLibDirectory = new DirectoryInfo(Path.Combine(currentDirectory, @"lib\x86\")); } else { e.VlcLibDirectory = new DirectoryInfo(Path.Combine(currentDirectory, @"lib\x64\")); } } private void OnPlayButtonClick(object sender, RoutedEventArgs e) { BeforeVideo.Visibility = Visibility.Hidden; PlayButton.Visibility = Visibility.Hidden; StopButton.Visibility = Visibility.Visible; myControl.Visibility = Visibility.Visible; myControl.MediaPlayer.Play(new Uri("http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4")); //myControl.MediaPlayer.Play(new FileInfo(@"..\..\..\Vlc.DotNet\Samples\Videos\BBB trailer.mov")); } private void OnStopButtonClick(object sender, RoutedEventArgs e) { StopButton.Visibility = Visibility.Hidden; PlayButton.Visibility = Visibility.Visible; myControl.Visibility = Visibility.Hidden; } }
-
Soruyon sonra kendin çözüyon sonra cevabını yayınlamıyon :D
-
EnesErgun bunu yazdı
Soruyon sonra kendin çözüyon sonra cevabını yayınlamıyon :D
valla kuru iftira: http://www.tahribat.com/Forum-Wpf-Radiobutton-Group-Problemi-205527/1/#2557078 :D
-
Lightsaber bunu yazdıEnesErgun bunu yazdı
Soruyon sonra kendin çözüyon sonra cevabını yayınlamıyon :D
valla kuru iftira: http://www.tahribat.com/Forum-Wpf-Radiobutton-Group-Problemi-205527/1/#2557078 :D
Aman iyi ki ona yazmışsın :D
-
up olsun
-
Kanka bişi sorcam sürekli soru soruyon cevabını alıyon nasıl bir proje yapıyon sen anlamıyom
Bukadar bilgiyi ne için kullanacan :d git ders çalış la
-
by_Tet bunu yazdı
Kanka bişi sorcam sürekli soru soruyon cevabını alıyon nasıl bir proje yapıyon sen anlamıyom
Bukadar bilgiyi ne için kullanacan :d git ders çalış la
yav en son soru sorduğum konu taa 5 ay önce, bir de 2 gün önce nasıl çok soru oldu :)
ben anlatırım sana projeyi :D sen vlc den haber ver :D
-
Lightsaber bunu yazdıby_Tet bunu yazdı
Kanka bişi sorcam sürekli soru soruyon cevabını alıyon nasıl bir proje yapıyon sen anlamıyom
Bukadar bilgiyi ne için kullanacan :d git ders çalış la
yav en son soru sorduğum konu taa 5 ay önce, bir de 2 gün önce nasıl çok soru oldu :)
ben anlatırım sana projeyi :D sen vlc den haber ver :D
Yahu ben tüm sorularını kastetmiştim sadece bu projeni değil :D
Ben anlamam koddan falan bilmem ben yazılım nedir :d
by_Tet tarafından 25/Nis/15 21:50 tarihinde düzenlenmiştir -
by_Tet bunu yazdıLightsaber bunu yazdıby_Tet bunu yazdı
Kanka bişi sorcam sürekli soru soruyon cevabını alıyon nasıl bir proje yapıyon sen anlamıyom
Bukadar bilgiyi ne için kullanacan :d git ders çalış la
yav en son soru sorduğum konu taa 5 ay önce, bir de 2 gün önce nasıl çok soru oldu :)
ben anlatırım sana projeyi :D sen vlc den haber ver :D
Yahu ben tüm sorularını kastetmiştim sadece bu projeni değil :D
Ben anlamam koddan falan bilmem ben yazılım nedir :d
çekil aradan o zaman :D
-
Secred project i anlatayım mı lan burdan haa :D up olsun maksat
-
winforms için şöyle bir çözüm buldum ancak wpf'e geçiremedim pek: http://stackoverflow.com/questions/24799178/c-sharp-vlc-player-mouse-double-click-event
daha önce bi panelin içine aldım player'ı o zaman butonlar çalışıyor ama video gözükmüyor.