我是 'qt' 编程的新手,我正在使用 'QPlainTextEdit' 编写一个简单的文本编辑器。
我已经在“ qt 论坛”中问过我的问题,但没有得到答复。
我有两个“QPushButton”来粗体和斜体,但问题是它们编辑的是整个文本而不是选定的文本。
当我尝试更改字体大小时出现同样的问题
在主要我有:
this->B_flag=false;
this->I_flag=false;
this->Font_Size=15;
QFont newFont("Courier", this->Font_Size, QFont::Normal, false);
textEdit->setFont(newFont);
在方法中:
void MainWindow::setItalic()
{
QFont newFont("Courier", this->Font_Size);
if(this->I_flag==false){
newFont.setItalic(true);
this->I_flag=true;
}
else{
newFont.setItalic(false);
this->I_flag=false;
}
newFont.setBold(this->B_flag);
textEdit->setFont(newFont);
}
我有一个类似的功能来设置粗体。
改变大小的类似方法:
void MainWindow::setNormal()
{
this->Font_Size=25;
QFont newFont("Courier", Font_Size);
newFont.setBold(this->B_flag);
newFont.setItalic(this->I_flag);
textEdit->setFont(newFont);
}
这是截图:
s22.postimg.org/b28r9tjap/before.jpg
s8.postimg.org/urxj51s9x/after.jpg
和整个代码以防万一:
https://www.dropbox.com/sh/g2hq0dmk9768ps5/v_3kUsxdQl
如果有人可以提供帮助,那就太好了。