首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >gtkmm4:隐藏Gtk::视频的Gtk::MediaControls

gtkmm4:隐藏Gtk::视频的Gtk::MediaControls
EN

Stack Overflow用户
提问于 2021-12-28 00:48:23
回答 2查看 81关注 0票数 0

我不太喜欢Gtk::视频控件的外观,我想用我自己的自定义控件来扩展它们,但我不知道如何隐藏默认的媒体控件。有什么办法我能做到吗?

EN

回答 2

Stack Overflow用户

发布于 2022-07-25 07:46:33

来自Gtk.Video的文档:

控件可以作为Gtk.MediaControls单独使用。如果你只想在没有控制的情况下显示一个视频,你可以像对待其他任何可画的视频一样对待它,例如把它放到Gtk.Picture.

中。

票数 0
EN

Stack Overflow用户

发布于 2022-08-22 09:22:16

我知道如何在GTK中做到这一点。您只需在GTKMM中找到相应的方法。GtkVideo小部件包含一个GtkOverlay。在这个覆盖层中有三个元素GtkPicture、GtkImage、GtkRevealer。GtkPicture是视频的表面。GtkImage是视频中心的那个大播放按钮。而GtkRevealer是控件的块。因此,基本上,我是隐藏或移除GtkVideo的第一个孩子的最后一个孩子。

代码语言:javascript
复制
GtkMediaFile* videoFile = GTK_MEDIA_FILE(gtk_media_file_new_for_file(g_file_new_for_path("GTK4Video.mp4")));
GtkVideo* videoPlayer = GTK_VIDEO(gtk_video_new_for_media_stream(GTK_MEDIA_STREAM(videoFile)));
GtkOverlay* videoOverlay = GTK_OVERLAY(gtk_widget_get_first_child(GTK_WIDGET(videoPlayer)));
GtkRevealer* videoControls = GTK_REVEALER(gtk_widget_get_last_child(GTK_WIDGET(videoOverlay)));

gtk_widget_hide(GTK_WIDGET(videoControls));
//gtk_overlay_remove_overlay(videoOverlay, GTK_WIDGET(videoControls));
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70501785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档