方法1、调用QLineEdit的setClearButtonEnabled();只要一行代码就搞定了很是清爽。
方法2、通过添加Action的方式。从Qt5、2开始QLineEdit提供了addAction函数,方便我们在QLineEdit上添加一些 *** 作。我们需要给addAction函数提供一个action和位置。
如上图中前两行代码就是创建一个QAction对象。为了偷懒这里使用了标准的图标(解释:standardIcon是QStyle的函数,QStyle::SP_TrashIcon是QStyle类标准图片的一个枚举,qApp是一个全局的QApplication对象,代表整个应用程序)。QLineEdit::TrailingPosition就是action要放置的位置,表示放在尾部,那么另外一个位置自然就是头部了QLineEdit::LeadingPosition。至于哪边是头哪边是为就要看布局的方向了,默认情况是从左到右的布局,那么左边就是头右边就是尾。
可以通过调用setLayoutDirection函数来改变布局方向,不过经过测试设置为从右到左的方向时,action的位置会有问题。
设置一个空图标即可更改。当控件或窗口的状态发生切换时,默认的图标绘制函数会自动根据控件或窗口的状态重新绘制图标。
如果控件或者窗口还有所谓的开关状态则还可以根据state参数来选择不同的图像。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)