print QUrl.fromLocalFile(x).isValid()<br>d.openUrl(QUrl.fromLocalFile(x))<br><br>It&#39;s valid, but still doesn&#39;t work<br><br><div class="gmail_quote">W dniu 26 stycznia 2009 09:55 użytkownik Sergio Jovani <span dir="ltr">&lt;<a href="mailto:lesergi@gmail.com">lesergi@gmail.com</a>&gt;</span> napisał:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br>
<br>
You have to specify fromLocalFile() in QUrl():<br>
<br>
DesktopServices().openUrl(QUrl.fromLocalFile(&quot;/home/piotr/test2/lol<br>
bar/photo_4900_8ea80c_huge.jpg&quot;))<br>
<br>
Bye!<br>
<br>
2009/1/26 piotr maliński &lt;<a href="mailto:riklaunim@gmail.com">riklaunim@gmail.com</a>&gt;:<br>
<div><div></div><div class="Wj3C7c">&gt;<br>
&gt;<br>
&gt; 2009/1/26 David Boddie &lt;<a href="mailto:david@boddie.org.uk">david@boddie.org.uk</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; On Sun Jan 25 22:17:46 GMT 2009, piotr malinski wrote:<br>
&gt;&gt;<br>
&gt;&gt; &gt; Here is an example script:<br>
&gt;&gt; &gt; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
&gt;&gt; &gt; from PyQt4.QtCore import *<br>
&gt;&gt; &gt; from PyQt4.QtGui import *<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; d = QDesktopServices()<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; x = &#39;/home/piotr/test2/lol bar/photo_4900_8ea80c_huge.jpg&#39;<br>
&gt;&gt; &gt; print QUrl(x).isValid()<br>
&gt;&gt; &gt; d.openUrl(QUrl(x))<br>
&gt;&gt; &gt; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
&gt;&gt; &gt; The problem is it won&#39;t work if there is a space in the path - &quot;lol<br>
&gt;&gt; &gt; bar&quot;, for spaceless paths it works (also for example on windows it<br>
&gt;&gt; &gt; needs paths with slashes not backslashes...). How can I make the path<br>
&gt;&gt; &gt; valid for QDesktopServices? (the QUrl itself is valid)<br>
&gt;&gt;<br>
&gt;&gt; Perhaps try encoding the URL first:<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; <a href="http://www.riverbankcomputing.com/static/Docs/PyQt4/html/qurl.html#toEncoded" target="_blank">http://www.riverbankcomputing.com/static/Docs/PyQt4/html/qurl.html#toEncoded</a><br>
&gt;&gt;<br>
&gt;&gt; This may be related to a bug that was apparently fixed in Qt 4.4.0:<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; <a href="http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&amp;id=194046" target="_blank">http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&amp;id=194046</a><br>
&gt;&gt;<br>
&gt;&gt; You don&#39;t say which version of Qt you are using. If it&#39;s later than Qt<br>
&gt;&gt; 4.4.0,<br>
&gt;&gt; it would be good if you could report this as a bug using the Task Tracker.<br>
&gt;&gt;<br>
&gt;&gt; David<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; PyQt mailing list &nbsp; &nbsp;<a href="mailto:PyQt@riverbankcomputing.com">PyQt@riverbankcomputing.com</a><br>
&gt;&gt; <a href="http://www.riverbankcomputing.com/mailman/listinfo/pyqt" target="_blank">http://www.riverbankcomputing.com/mailman/listinfo/pyqt</a><br>
&gt;<br>
&gt;<br>
&gt; PyQt 4.4.4-r1, Qt 4.4.2, and using:<br>
&gt; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
&gt; from PyQt4.QtCore import *<br>
&gt; from PyQt4.QtGui import *<br>
&gt;<br>
&gt; d = QDesktopServices()<br>
&gt;<br>
&gt; x = &#39;/home/piotr/test2/lol bar/photo_4900_8ea80c_huge.jpg&#39;<br>
&gt; x = unicode(QUrl(x).toEncoded()<br>
&gt; print x<br>
&gt; print QUrl(x).isValid()<br>
&gt; d.openUrl(QUrl(x))<br>
&gt; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
&gt; Doesn&#39;t help. So is it a Qt bug?<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; PyQt mailing list &nbsp; &nbsp;<a href="mailto:PyQt@riverbankcomputing.com">PyQt@riverbankcomputing.com</a><br>
&gt; <a href="http://www.riverbankcomputing.com/mailman/listinfo/pyqt" target="_blank">http://www.riverbankcomputing.com/mailman/listinfo/pyqt</a><br>
&gt;<br>
</div></div></blockquote></div><br>