2016-07-25 15 views
8

ben yeniyim arasındaki fark ve QPushButton ve QToolButton arasındaki fark bana çok açık değildir.<strong>Qt</strong> tarihinde QPushButton ve QToolButton

Ben QToolButton genellikle QToolBar kullanıldığını biliyoruz ve genellikle metin olmadan, sadece bir simge gösteriyor, fakat oldukça ikisi arasındaki temel farkı bilmemektedir.

Biraz daha büyük bir fark var mı? QPushButton ve ne zaman QToolButton kullanmalıyım?

En uygun düğmeyi kullanmak için bunu bilmek isterim ve bazı GUI sınamalarını gerçekleştirmem gerekiyor ve belki de alakalı olabilir.

Qt doc itibaren
+4

Farkı kendiniz açıkladınız: biri araç çubuğunda, diğeri ise UI'de sıradan bir düğme olarak kullanılmak içindir (örneğin bir iletişim kutusunda "OK" ve "İptal" düğmelerinin olması gerekir) . Sormadığınız belirli bir UI/UX sorunuz var mı? – peppe

cevap

10

QToolButtonQPushButton daha kaputun altında çok daha karmaşıktır. örnekler (tam olmayan) listesi:

  • QToolButton sıkıca QAction entegre edilmek üzere tasarlanmıştır. Bir aletin düğmesinin varsayılan eyleminin ikonunu, metnini vb. Değiştirmek butona yansıtılır.
  • Düğme içeriğinin düzenini değiştirebilirsiniz (yalnızca simge, yalnızca metin, simgenin yanındaki metin, simgenin altındaki metin).
  • QToolButton, bir kenar çubuğu sıcak bölgesinin varsayılan eylemi tetiklemek yerine bir menü açtığı bir "bölünmüş" düğme türünü destekler. QToolButton, QPushButton'dan daha küçük varsayılan dahili kenar boşluklarına sahiptir.
  • Araç düğmeleri, bir eylem ekleyerek, diğer widget'lar açıkça eklenmelidir, doğrudan bir QToolBar içinde oluşturulabilir.
3

. http://doc.qt.io/qt-5/qtoolbutton.html#details

"bir araç düğmesi belirli komutlar veya seçeneklere hızlı erişim sağlayan bir özel düğme normal bir komut düğmesinin aksine, bir araç düğmesi genellikle metin göstermiyor etiket, ancak bunun yerine bir simge gösterir. "

GUI'de yalnızca bir simgeyle basit bir düğme istediğimde, QToolButton'u kullanırım. Ama klasik bir düğme istediğimde, QPushButton kullanıyorum.

Hiçbir büyük farklılıklar,