wxPython programımda TextCtrl
var ve genişliğini tam olarak 3 karaktere ayarlamak istiyorum. Bununla birlikte, boyutunu manuel olarak ayarlamanın tek yolu yalnızca piksel sayısını kabul eder. Piksel yerine karakter belirtmenin herhangi bir yolu var mı?Bir wxPython TextCtrl genişliğini karakter sayısında ayarlama
cevap
Yazı tiplerinin çoğunun orantılı olduğunu, yani her karakterin farklı bir genişliğe sahip olabileceği anlamına gelir. WWW ve lll'in her ikisi de 3 karakterdir, ancak çok farklı boyutlarda metin kutusu gerektirir. Courier gibi bazı fontlar, sabit genişlikte olacak şekilde tasarlanmıştır ve bu problemi olmayacaktır. Ne yazık ki, metin kutusunda hangi yazı tipinin seçili olduğuna dair kontrolünüz olmayabilir.
Yine de bunu denemek istiyorsanız, anahtarın bir karakterin genişliğini piksel cinsinden almak, karakter sayısıyla çarpmak ve ardından karakterlerin kenarlıkları için bir miktar dolgu eklemek. LITB anlaşılacağı gibi,
http://docs.wxwidgets.org/stable/wx_wxdc.html#wxdcgetpartialtextextents
ya:: Bu olmak için iyi bir başlangıç noktası bulabilir
http://docs.wxwidgets.org/2.4/wx_wxwindow.html#wxwindowgettextextent
bir yolu olmalı görünmüyor. Bununla birlikte, wxWindow::GetTextExtent
'u kullanabilirsiniz. Bu C++ kodu, ama kolayca wxPython uyarlanabilir:
int x, y;
textCtrl->GetTextExtent(wxT("T"), &x, &y);
textCtrl->SetMinSize(wxSize(x * N + 10, -1));
textCtrl->SetMaxSize(wxSize(x * N + 10, -1));
/* re-layout the children*/
this->Layout();
/* alternative to Layout, will resize the parent to fit around the new
* size of the text control. */
this->GetSizer()->SetSizeHints(this);
this->Fit();
, sen bazı küçük değer katarak, (yazı tipleri değişken genişlik karakterler olabilir) ve düzgün çarpın makul genişlik karakterinin boyutunu almak yerel dolgu için hesap (say, 10px).
- 1. Xcode'ta pencere genişliğini ayarlama
- 2. Bir görüntünün genişliğini yeni bir sekmede ayarlama
- 3. Kaydediciyi özel bir günlüğe kaydetme işleyicisi kullanarak bir wxPython textCtrl dosyasına nasıl yeniden yönlendirebilirim?
- 4. Tablo görünümünde sütun genişliğini ayarlama
- 5. Reklam genişliğini match_parent olarak ayarlama
- 6. Metin girilirken metin girilirken bir metin kutusuna wxPython
- 7. wxPython
- 8. wxPython
- 9. CSS Textarea genişliğini% 100 olarak ayarlama
- 10. ExtJS textfield genişliğini kapsayıcısına göre ayarlama
- 11. Sphinx (belge aracı): çıkışta sekme genişliğini ayarlama
- 12. Tablo sütun genişliğini Markdown aracılığıyla ayarlama
- 13. Farklı web tarayıcılarında PRE sekmesi genişliğini ayarlama
- 14. Android studio'da gezinme çekmecesinin genişliğini ayarlama
- 15. A TextCtrl Kutusundan Dize Alma
- 16. wx.SetTextForeground, wxPython
- 17. wxPython 3.4.1
- 18. Bir wxPython Penceresinin yeniden boyutlandırılması
- 19. navbar sayısında Bootstrap dikey merkezleme
- 20. Excel/VBA: verileri yapıştırdıktan sonra sütun genişliğini otomatik olarak ayarlama
- 21. Android: Genişliğini temel alarak XML'de düğme yüksekliğini ayarlama
- 22. Dışa aktarma sırasında hücre genişliğini ayarlama js-xlsx
- 23. Tepkime önyükleme için özel daraltma genişliğini ayarlama NavBar
- 24. Android'de TextView'ın genişliğini ve yüksekliğini dinamik olarak ayarlama
- 25. Neden bazı karakter değişmezleri Java'da Sözdizimi Hataları'na neden oluyor? JavaSpecialists bültenin son sayısında
- 26. wxPython WebView örnek
- 27. wxPython bulunamadı hatası
- 28. Python/wxPython: Bir wxPython arayüzü ile Python içinde simülasyonlar çalıştırmak için bir program yapıyorum arka
- 29. Bir öğenin genişliğini, yüzde
- 30. RTF'yi bir wxpython RichTextCtrl içine nasıl ekleyebilirim?