一 : QTreeWidget用法总结
1.1. QTreeWidget用法
1、简介
QTreeWidget的初始化是使用一个QTreeWidgetItem 的list填充到QTreeWidget中。(www.61k.com) QTreeWidget的setColumnCount ( int )方法可以设置QTreeWidget显示的列数。
2、代码
int CEnergyquery::InitLeftTree()
{
//初始化左边作树形结构
QList<QTreeWidgetItem *> TreeWigItms; //使用一个QTreeWidgetItem 的list填充到
//QTreeWidget中
int ID = 0;
QString Name;
// QTreeWidgetItem的list中插入N个元素
for(int m=0;m<N;m++)
{
QTreeWidgetItem *PareNodeItm = new QTreeWidgetItem;
PareNodeItm->setData(0,Qt::UserRole,NodeID); //存储节点相关数据 PareNodeItm->setText(0, Name); //设置节点的名称 TreeWigItms.push_back(PareNodeItm);
//为 list中插入的元素添加M个子节点
for(int k=0;k<M;k++)
{
QTreeWidgetItem *ChidNodeItm = new QTreeWidgetItem(PareNodeItm); ChidNodeItm->setData(0, Qt::UserRole,ID); //节点相关数据 ChidNodeItm->setText(0, Name); //节点名称
}
}
//在QTreeWidget上显示树形结构
ui->treeWidget->insertTopLevelItems(0,TreeWigItms);
return 1;
}
widget QTreeWidget用法总结
3、常用函数:
1)void QTreeWidget::insertTopLevelItems ( int index, const QList<QTreeWidgetItem *> & items ) 从QTreeWidget的第Index元素处,开始插入列表QList<QTreeWidgetItem *> & items
2)QList<QTreeWidgetItem *> QTreeWidget::findItems ( const QString & text, Qt::MatchFlags flags, int column = 0 ) const
在QTreeWidget的Item节点中检索包含text字符串的节点,并返回这些节点的列表。(www.61k.com)
有用初始化QTreeWidget的时候使用的是QList<QTreeWidgetItem *>列表,检索时只从QList<QTreeWidgetItem *>列表的元素中检索,检索元素下的子节点。需要自己实现代码检索QList<QTreeWidgetItem *>列表元素以及元素下的子节点。
for(int m=0;m< RowNum; m++) //遍历所有父节点
{
CurTopLevItm = ui->treeWidget->topLevelItem(m); //显示与关键字匹配的馈线 TopNodText=CurTopLevItm->text(0);
IsContain=TopNodText.contains(KeyWord,Qt::CaseInsensitive); //节点名字是否包含关键字
if(IsContain)
{
if(CurTopLevItm->isHidden())
CurTopLevItm->setHidden(false); //显示此节点
}
else
CurTopLevItm->setHidden(true);
//遍历该父节点下的子节点
for(int n =0;n<CurTopLevItm->childCount();n++)
{
CurChidItm = CurTopLevItm->child(n);
ChilNodText=CurChidItm->text(0);
IsContain = ChilNodText.contains(KeyWord,Qt::CaseInsensitive); //节点名字是否包含关键字
if(!IsContain) //与关键字不匹配
{
CurChidItm->setHidden(true);
continue;
}
CurChidItm->setHidden(false); //与关键字匹配
if(CurTopLevItm->isHidden()) //显示其父节点
CurTopLevItm->setHidden(false);
if(!CurTopLevItm->isExpanded())
CurTopLevItm->setExpanded(true); //展开父节点
}
widget QTreeWidget用法总结
}
二 : MaskedTextBox用法总结
1、概念MaskedTextBox类是一个增强型的TextBox控件,它支持用于接受或拒绝用户输入的声明性语法。通过使用Mask属性,无需在应用程序中编写任何自定义验证逻辑,即可指定下列输入:
当MaskedTextBox控件在运行时显示时,会将掩码表示为一系列提示字符和可选的原义字符。表示一个必需或可选输入的每个可编辑掩码位置都显示为单个提示字符。例如,数字符号(#) 通常用作数字字符输入的占位符。可以使用PromptChar属性来指定自定义提示字符。HidePromptOnLeave属性决定当控件失去输入焦点时用户能否看到提示字符。
当用户在掩码文本框中键入内容时,有效的输入字符将按顺序替换其各自的提示字符。如果用户键入无效的字符,将不会发生替换。在这种情况下,如果BeepOnError属性设置为true,将发出警告声,并引发MaskInputRejected事件。可以通过处理此事件来提供您自己的自定义错误处理逻辑。
如果当前插入点位于原义字符处,用户将有多种选择:
可以使用MaskFull属性来验证用户是否输入了所有必需的输入内容。Text属性将始终检索按照掩码和TextMaskFormat属性设置格式的用户输入。
实际上,MaskedTextBox控件将所有掩码处理工作交给由MaskedTextProvider属性指定的System.ComponentModel.MaskedTextProvider类来完成。此标准提供程序支持除代理项和纵向组合字符以外的所有Unicode 字符;但是,可以使用AsciiOnly属性将输入限定为字符集a-z、A-Z 和 0-9 内的字符。
掩码不能保证用户输入一定会表示给定类型的有效值,例如,输入的年龄值可能为-9。通过将值的类型的实例赋给ValidatingType属性,可以确保用户输入表示一个有效值。通过监视TypeValidationCompleted事件,可以检测当MaskedTextBox包含无效值时,用户是否将焦点从该控件移开。如果键入验证成功,可以通过TypeValidationEventArgs参数的ReturnValue属性使用表示该值的对象。
与TextBox控件一样,几个通用键盘快捷键不能用于MaskedTextBox。尤其是Ctrl-R(右对齐文本)、Ctrl-L(左对齐文本)和 Ctrl-E(文本居中)都无效。
2.掩码元素一览
掩码元素 | 说明 |
0 | 数字,必选。此元素将接受0 到 9 之间的任何一个数字。 |
9 | 数字或空间,可选。 |
# | 数字或空间,可选。如果掩码中该位置为空白,在Text 属性中将把它呈现为一个空格。允许使用加号 (+) 和减号 (-)。 |
L | 字母,必选。将输入限定为 ASCII 字母 a-z 和A-Z。此掩码元素等效于正则表达式中的 [a-zA-Z]。 |
? | 字母,可选。输入限定为 ASCII 字母 a-z 和A-Z。此掩码元素等效于正则表达式中的 [a-zA-Z]?。 |
& | 字符,必选。如果AsciiOnly 属性设置为 true,此元素的行为将与“L”元素类似。 |
C | 字符,可选。任何非控制字符。如果AsciiOnly 属性设置为 true,此元素的行为将类似于“?”元素。 |
A | 字母数字,可选。如果将AsciiOnly 属性设置为 true,则它接受的唯一字符是 ASCII 字母 a-z 和 A-Z。 |
a | 字母数字,可选。如果将AsciiOnly 属性设置为 true,则它接受的唯一字符是 ASCII 字母 a-z 和 A-Z |
. | 小数点占位符。使用的实际显示字符将是相应于格式提供程序的小数点占位符,格式提供程序由控件的FormatProvider 属性决定。 |
, | 千分位占位符。使用的实际显示字符将是相应于格式提供程序的千分位占位符,格式提供程序由控件的FormatProvider 属性决定。 |
: | 时间分隔符。使用的实际显示字符将是相应于格式提供程序的时间占位符,格式提供程序由控件的FormatProvider 属性决定。 |
/ | 日期分隔符。使用的实际显示字符将是相应于格式提供程序的日期占位符,格式提供程序由控件的FormatProvider 属性决定。 |
$ | 货币符号。显示的实际字符将是相应于格式提供程序的货币符号,格式提供程序由控件的FormatProvider 属性决定。 |
< | 转换为小写。将后续所有字符都转换为小写。 |
> | 转换为大写。将后续所有字符都转换为大写。 |
| | 禁用前一个大写转换或小写转换。 |
\ | 转义。对掩码字符进行转义,将其转变为原义字符。“\\”是反斜杠的转义序列。 |
其他所有字符 | 原义字符。所有非掩码元素都将原样出现在MaskedTextBox 中。原义字符在运行时始终占据掩码中的一个固定位置,用户不能移动或删除该字符。 |
三 : as的用法总结
四 : const 用法总结(C++)
根据个人的学习和理解,下面我将从以下几个分类来进行讨论,如有错误之处,还请各位大虾多多指教!(部分内容直接转载,以供学习和参考)五 : Such用法总结
such可以分为三种不同的词性。
一、形容词的用法
1.such做形容词,是最常见、也是最简单的用法,起到一种强调作用。
She's got such talent.她很有天赋。
We're having such a wonderfultime. 我们过得很愉快。
I've had such ashock.我大吃一惊。
Why are you in such a hurry?为什么你这么匆忙?
2.注意上面的第二个例子,"such a wonderfultime"。
通常情况下,如果such与名词之间还带有形容词,这时不提倡使用such,因为会引起歧义。而要说"sowonderful a time"或者"a time so wonderful"。
3.当句子末尾加上that引导从句,形成such...that结构时,表示因为前面提到的原因,引起了某种结果。
He speaks to me in such a waythat I alwaysfeel he is insulting me. 他总是用那种方式跟我说话,总是使得我觉得受到了侮辱。
It was such a boringspeech (that)I fell asleep. 这是个乏味的演说,使得我睡着了。
二、限定词的用法
4.所谓“限定词”,指的是对名词的涵义加以限制的词。又分为后对应限定和前对应限定两种。
5.前对应限定的such,指的是前面提到过的某一种类。
He noticed her necklace. Such jewels musthave cost thousands, he thought. 他注意到了她的项链。这一定值几千元,他想。
This isn't the only story of crulty to children. Many such cases arereported every day. 这并非虐待儿童的唯一事件。每天都有许多类似案例被报道。
6.后对应限定的such,指的是后面将要提到的某一种类。通常使用such... as/that ...的结构。
Such a disaster as this had never happenedto her before.以前她从未遇到过这样的灾难。
The knot was fastened in such a waythat it wasimpossible to undo.
这个结打得很牢固,根本解不开。
Such advice as he was given provedalmost worthless.他得到的那些建议,被证明毫无价值。
He's not such a foolas he looks.他并非看上去那样蠢。
注意,规范的用法是,这时应避免使用such...that,而只使用such...as,方便与前面的第3点相区分。
三、代词的用法
7.such做代词的时候,也分为前指代和后指代两种。
8.前指代的意思是,指代前面提到过的某个人或某件事。通常,这时指代的是前面整句话的涵义。
Cricket was boring. Such was heropinion befor meeting Ian.
板球很乏味。遇到Ian之前,她一直这么认为。
She's a competent manager and has always been regarder assuch byher colleagues.
她是一个能干的经理。同事们一直这样看待她。
9.后指代的意思是,指代后面提到的某个人或某件事。这时通常采用suchas to do sth或such that的结构。
Such is the influence of TV that it can make a personfamous overnight.
这就是电视的影响,它可以使人一夜成名。
Thepain in her foot wasn't such as to stop herwalking. 她脚上的痛,还没有到妨碍走路的地步。
The damage was suchthat it would cost too much to repair.损害很严重,要用很多钱才能修好。
四、词组 such as 和 assuch
10.suchas可以连在一起,作为词组使用,意思是“比如、就像”,同like类似。
Wild flowers suchas orchids and primroses are becoming rare.
像兰花和樱草花那样的野花,越来越少见了。
Large and important projects such as this oneoften take years to develop.
类似这一个的大型重要项目,需要好多年才能发展起来。
11.词组assuch通常用在词尾,其实只是代词用法的一个引申,或者表示“像看上去那样”。
If this is not genuine champagne, it should not be labelledassuch.
既然这不是真的香槟酒,就不应该这样标识。
The new job is not promotion as such but it hasgood prospects.
新工作并非真的升职,不过前景不错。
五、莎士比亚著作中的such例句
12.such是一个很老的词,莎士比亚就经常用。下面是一些从他著作中选出的例句。
Good night, good night! parting is such sweetsorrow,
Romeo and Juliet: II, ii
良宵,良宵!此时分别真是甜蜜又悲伤。
《罗密欧与朱丽叶》第二幕,第二场
We are such stuff as dreams are made on, and our little life isrounded with a sleep.
The Tempest: IV, iv
构成我们的料子也就是那梦幻的料子,我们短暂的一生,前后都环绕在酣睡之中。
《暴风雨》第四幕,第四场
Alas, our frailty is the cause, not we: For such as we are made of,such we be.
The Twelfth Night
唉,原因在于我们的弱点,而非我们:因为我们由什么材料制成,就会成为什么样子。
《第十二夜》
I had rather be a dog, and bay the moon, than such aRoman.
Julius Caesar: IV, iii
我宁愿做一只向月亮狂吠的狗,也不愿做这样一个罗马人。
《尤利乌斯·恺撒》第四幕,第三场
Teach not thy lip such scorn, for it was made For kissing, lady,not for such contempt.
KING RICHARD III: I, ii
何必如此出言讥讽,夫人,天生你可亲吻的香唇,不是给你做侮蔑之用的。
《理查三世》第一幕,第三场
We were, fair queen, Two lads that thought there was no morebehind. But such a day to-morrow as
to-day. And to be boy eternal.
The Winter's Tale: I, ii
我们那时是两个不知道有将来的孩子,以为明天就跟今天一样,永远是个孩子。
《明天的故事》第一幕,第二场
本文来自http://www.ruanyifeng.com/blog/
本文标题:as用法总结-QTreeWidget用法总结61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1