Qt中如何实现QTextEdit中文字的单个删除 和 连续删除
来源:互联网 发布:金山软件成都 编辑:程序博客网 时间:2024/05/18 03:42
前两天有人问我关于如题所示的问题,具体就是说:现在他想做一个按钮,当click它时:只删除编辑框中的一个文字,而当常按press时:则连续的删除文字,此后一旦release,则立即停止删除问题。
关于如何删除一个文字,这个很好实现,这里把重点放在:如何区分这两种状态上。
我在实现时:只用了一个定时器。总体为:当第一次press时间达到0.5s时开始连续删除,如果按压的时间不足0.5s即release,则只删除一个文字; 而连续删除文字时:是每隔0.1s删除一个,一旦中途release了,则立即停止删除文字。
代码如下,可以直接拿来用,当然,你需要自己手动实现删除编辑框中一个文字的函数DeleteOneCharacterInEditor()。
timer1 = = new QTimer(this);
QObject::connect(timer1, SIGNAL(timeout ()),
QObject::connect(iDeleteButton, SIGNAL(pressed()),this , SLOT(PressDelete()));
QObject::connect(iDeleteButton, SIGNAL(released ()),this, SLOT(ReleaseDelete()));
//-----------------------------------------------------------------------------------------
void test::PressDelete() {
press = 1; timer1->setSingleShot(
timer1->start(500);
}
void
{
if(mEditor)
{
DeleteOneCharacterInEditor();
}
press = 0;
timer1->start(100);
}
void test::ReleaseDelete()
{
timer1->stop();
if(press == 1) { { DeleteOneCharacterInEditor(); } }
测试环境: qt 4.5.2 qt4.5.0 qt4.6.2 for symbian for windows
- Qt中如何实现QTextEdit中文字的单个删除 和 连续删除
- 单个JSP页面中实现查询和删除数据实例
- PDF中如何删除文字
- 编写一个函数,实现字符串中,单个字符的删除
- QT QTextEdit中超链接
- 如何将PDF文件中不需要的文字进行删除
- 在 Microsoft Office Word 中如何删除括号和括号内的文字
- 删除一个字符串中连续的空格
- 删除一个字符串中连续的空格
- QT中如何实现XML文件的创建、增加、修改、删除功能。
- QT中如何实现XML文件的创建、增加、修改、删除功能。
- QT中如何实现XML文件的创建、增加、修改、删除功能。
- QT中如何实现XML文件的创建、增加、修改、删除功能。
- 如何限定QTextEdit中字数的个数
- QT 中QTextEdit添加图片
- Qt中删除文件夹的函数(非递归实现)
- 删除字符串中连续字符
- 删除TableView中单个cell的分割线
- 《A Byte of Python》笔记
- 新系统新架构
- 网络游戏服务器开发::用模板偏特化封装C++调用lua的代码
- 0000OSI参考模型
- Java容器类List、ArrayList、Vector、Map、HashSet等 ( 转载 )
- Qt中如何实现QTextEdit中文字的单个删除 和 连续删除
- MaskEdit的EditMask使用方法
- PHP htmlentities和htmlspecialchars的区别
- Log4j记录不同包(java package)的日志到不同文件的方法
- ITIL something
- MySQL和ASP.NET配合更强大(转载)
- 时间格式化与地区关系
- JAVA保留小数点
- 上传文件大小限制