Qt WebKit 播放youtube問題

喜歡程式設計嗎?想要一窺 KDE/Qt 程式設計的奧秘嗎?想要
學習 X Window 上的視窗程式設計嗎?歡迎各類關於 KDE/Qt、Qtopia、Qt/Embedded、QSA、PyQt 等各類心得討論。

版主: AceLan, Franklin

Qt WebKit 播放youtube問題

文章song09585 » 週二 12月 01, 2009 12:46 am

我有看到新版的Qt中標榜webkit的功能如下:
Qt 4.5版本
Qt 4.5涵盖了一些新的特色,它令人瞩目的最大改进是通过协同作用提升了整个框架的性能。图形系统、数据处理和网络引擎性能显著增强,实现了基于Qt的应用程序性能的明显提升。

Qt 4.5版本还提升了与WebKit页面渲染引擎的集成度,将Web和本地内容融合进丰富的用户体验当中。包括:

* Netscape浏览器插件API支持,使Qt应用程序可以载入Flash(例如YouTube播放器)* 更先进的Web 用户界面效果,包括动画、转换和缩放
* 新的JavaScript脚本语言引擎可提供更强的性能


他標榜可以播放youtube影片,但是我試了很久,youtube網頁是可以開啟,但是影片都無法順利播放,不知道這個問題有沒有人成功解決過!!THX!!
song09585
可愛的小學生
可愛的小學生
 
文章: 1
註冊時間: 週二 12月 01, 2009 12:41 am

Re: Qt WebKit 播放youtube問題

文章dct47 » 週一 12月 14, 2009 9:13 am

建議您看看這頁:
http://doc.trolltech.com/4.5/qtwebkit.html

在linux系統下,我簡單的作法:
先下載adobe的libflashplayer.so, 放到/usr/lib/browser/plugins 目錄下,
如果沒有此目錄則建立一個。

然後在程式碼裡要把QWebPage的QWebSettings::PluginsEnabled 設為 true。

例如
代碼: 選擇全部
QWebPage webpage;
webpage.settings()->setAttribute(QWebSettings::PluginsEnabled, true);

參考:
http://doc.trolltech.com/4.5/qwebsettin ... alSettings
dct47
 

Re: Qt WebKit 播放youtube問題

文章訪客 » 週一 12月 14, 2009 2:10 pm

可以請問一下Phonon VideoWidget有進入全影幕模式和跳出全影幕模式的SLOT

enterFullScreen ();
exitFullScreen ();

我要如何使用它,因為我一進入全影幕就跳不出來了
是不是要用Signals,可是不知要從那下手,闢如按esc鍵就跳出全影幕模式,感覺是要用event,就是沒頭緒

3Q
訪客
 

Re: Qt WebKit 播放youtube問題

文章訪客 » 週一 12月 14, 2009 4:44 pm

找到了大概是這個
bool VideoWidget.event (self, QEvent)
VideoWidget.mouseMoveEvent (self, QMouseEvent)
回去在試
訪客
 


Re: Qt WebKit 播放youtube問題

文章訪客 » 週二 12月 15, 2009 3:02 am

試了一個晚上終於成功^_^"
關鍵是
1.VideoWidget加入一個QAction
2.在QAction設Shortcuts
3.把QAction的SIGNAL信號triggered(),連接到VideoWidget的SLOT信號曹exitFullScreen()

這樣VideoWidget進入全影幕模式號,按esc鍵就會跳出全影幕了
代碼: 選擇全部
vwidget->setShortcutEnabled(0,true);
QAction *at = new QAction(tr("&New"), vwidget);
vwidget->addAction(at);
vwidget->setAcceptDrops(true);
at->setShortcuts(QList<QKeySequence>() << QKeySequence(Qt::Key_Escape) << QKeySequence(Qt::Key_MediaStop));
connect(at, SIGNAL(triggered()), vwidget, SLOT(exitFullScreen()));
vwidget->enterFullScreen ();
訪客
 


回到 KDE/Qt 程式設計

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客