gpt4 book ai didi

python - 以字符数设置 wxPython TextCtrl 的宽度

转载 作者:太空狗 更新时间:2023-10-29 21:51:15 24 4
gpt4 key购买 nike

我的 wxPython 程序中有一个 TextCtrl,我想将其宽度设置为正好 3 个字符。但是,手动设置其大小的唯一方法只接受像素数。有没有办法指定字符而不是像素?

最佳答案

好像没有办法。但是,您可以使用 wxWindow::GetTextExtent。这是 C++ 代码,但可以很容易地适应 wxPython:

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();

也就是说,您采用合理宽度字符的大小(字体可能具有可变宽度字符)并将其适本地相乘,添加一些小值以考虑 native 填充(例如,10px)。

关于python - 以字符数设置 wxPython TextCtrl 的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/338217/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com