Sniqt'nin tüm tepsi yeteneklerini tanımasını sağlayın (veya Qt'de çalışan bir gösterge oluşturun)


9

Bu eski iş parçacığım var: Qt / C ++ ile nasıl bir çalışma göstergesi oluşturabilirim? benim uygulama için Ubuntu'da bir tepsi simgesi yapmak için QSystemTray kütüphanesini kullanmam önerildi.

Sniqt geri kalanıyla ilgilenen bir programdır. Bilindiği gibi Ubuntu tepsi simgelerinden kurtuldu. Bunun yerine artık göstergeleri ve yalnızca göstergeleri kullanıyor. Sniqt, Qt tepsi simgelerini çalışma göstergelerine dönüştürür.

Sorun, çok iyi bir dönüşüm yapmamasıdır. Tepsi simgelerini destekleyen sistemlerde çalışırken, tek tıklama, orta tıklama vb. Gibi işlemler çalışmaz.

Bu eylemleri geri almanın bir yolu var mı? QSystemTray simgesini kullanabilir ve yine de Ubuntu'da bu ilginç (ve benim durumumda çok yardımcı) eylemleri gerçekleştirebilir miyim?

Ben de daha önce bahsettiğim diğer iş parçacığının cevabını bilmek isterim (GTK kütüphanelerini kullanarak bir çalışma göstergesi yapmak ve çökmeyi önlemek).

Sniqt bug bağlantısı: https://bugs.launchpad.net/sni-qt/+bug/1027652


Bu tüm göstergeler için normal bir davranış değil mi? Yalnızca sol tıklama ve kaydırma olaylarını kabul ederler.
Timo

Hayır! Örneğin ses simgesine orta tıklarsanız sesi kapatır / açar. Benim uygulamada, ben çıkmak istiyorum.
hytromo

Yanıtlar:


0

Görünüşe göre Qt, 'aktive edilmiş' bir sinyali olsa bile, en azından Ubuntu Unity'de bu şeyi desteklemiyor. Bu yüzden GTK ve normal bir trayicon kullanmanızı tavsiye ederim, Qt. Bununla ilgili açıklama için Qt geliştiricileri ile iletişime geçebilirsiniz.


1
Üzgünüm ama Qt gerçekten bu işlevsellik tepsi simgeleri vardır. Tepsimin hareketi diğer sistemlerde kusursuz çalışıyor. Bu Ubuntu'nun sorunu ve göstergelere olan inatçılığıdır. Sniqt sorunu çözebilir
hytromo

2
Bunun Qt'nin hatası olmadığını doğrulayabilirim. Sorunun da olduğundan şüpheliyim sniqt. Uygulama göstergelerinin sol ve sağ tıklamaları birbirinden ayırabilme yeteneğinin bile olduğunun farkında değilim. Bu benim için de sürekli bir hayal kırıklığı kaynağı oldu.
Nathan Osman

1

Birlik, seçime göre, "iyi tepsi simgeleri" olarak adlandırdığınız şeyi desteklemez. Göstergeler ya da hiçbir şey. Oradan birkaç seçeneğiniz var:

  • Sınırlı gösterge özellikleri ile yapın. Göstergeniz tarafından kullanılacak menüyü standart QSystemTray.setContextMenu () yöntemiyle ayarlayabilirsiniz.

  • Uygulamanızı tamamen sistemden ayırın. İçinde olduğu gibi, onu masaüstünde yüzen bir simgeye dönüştürün, bu da Tanrı ve Matthias Ettrich'in istediği gibi orta ve sağ tıklamaları kabul edebilecek. Bunu nasıl yapacağınıza ilişkin basit bir örneği burada bulabilirsiniz: http://kde-apps.org/content/show.php/KEyes?content=51493 (İsteğe bağlı olarak, yalnızca Unity altında çalıştığınızı tespit ettiğinizde yapın, örneğin, $ DESKTOP_SESSION 'ubuntu' olarak ayarlanmışsa.)

  • Desteklenmeyen Birlik Bildirin. Bu çok iyi bir seçenek değil.

Seçenek 1 veya 2 ile gitmek isteyip istemediğiniz, esas olarak uygulamanızın ne yaptığına bağlıdır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.