加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xml – QtCreator模板向导:跳过%ProjectName%变量中的破折号

发布时间:2020-12-15 23:53:15 所属栏目:百科 来源:网络整理
导读:我正在尝试创建一个模板向导,其中项目名称(在“新建项目…”对话框中捕获)是向下的,并用于在C中生成不同的东西(名称空间,库名称,等等……),所以生成的名称不能包含破折号,以数字开头等. 例如,在wizard.xml中,变量LIBRARYNAME是从用户输入生成的,但是它采用了
我正在尝试创建一个模板向导,其中项目名称(在“新建项目…”对话框中捕获)是向下的,并用于在C中生成不同的东西(名称空间,库名称,等等……),所以生成的名称不能包含破折号,以数字开头等.

例如,在wizard.xml中,变量LIBRARYNAME是从用户输入生成的,但是它采用了下行的%ProjectName:l%作为默认值:

<fieldpagetitle>Project Configuration</fieldpagetitle>
    <fields>
    <!-- Library name -->
        <field mandatory="true" name="LIBRARYNAME">
            <fieldcontrol class="QLineEdit" validator='^[^-]+$'
                          defaulttext="%ProjectName:l%" />
            <fielddescription>Name for created library (all lowercase)</fielddescription>
        </field>

使用validator =’^ [^ – ] $’regexp thingy我可以阻止用户在变量中引入破折号(‘ – ‘)但是在设置%ProjectName%变量时我不能阻止它们这样做.

有没有可能的方法在%ProjectName%和/或向导使用的其他变量中跳过不需要的符号?例如,在xml中生成“defaulttext”时.

到目前为止,我尝试使用不同的类似javascript的东西,但没有任何效果,模板向导上的文档太简单了,它们没有涵盖这些内容.

现在我的选择是删除表单中的默认文本,但这很糟糕!我想做很酷的事情,比如从项目名称生成命名空间名称.

普通验证规则不适用于%ProjectName%变量吗?您是否尝试过添加以下内容:
<validationrules>
    <validationrule condition='/^[^-]+$/.test("%ProjectName%")'>
        <message>%ProjectName% cannot be used as project name.</message>
    </validationrule>
 </validationrules>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读