QT 科学计算器与谷歌拼音输入法实现

由于公司近期Unity项目已完成,而刚好公司的QT项目需要开发科学计算器与拼音输入法。所以就尝试着使用QT进行开发实现这些功能,可以在windows与linux环境下运行。记录一下开发过程,备忘。

效果图如下:

公式计算器
关于科学计算器

  • 支持的双目运算符有:( ) ^ * / % + - << >> #(a#b 取a的第b个字节 b[0,3] 0从低位开始)

  • 支持的单目运算符有:+(正) -(负) sin cos exp sqrt log ln abs tg ctg asin acos atg
    科学计算器功能主要使用了:逆波兰表达式算法。网上的资料还是很多的,不清楚的可以多看看。
    主要步骤:
    1、获取输入框中的字符串
    2、将得到的字符串进行分离运算符号和数字,保存在QVector中。并对输入的合法性进行校验
    3、将步骤2中分割好的表达式数组,转化为逆波兰表达式并存在QVector中。
    4、对公式进行计算

关于输入法
对于软键盘的布局网上很多例子可以参考,我也是参考网上拿过来改一改的
主要实现

  • 中英文输入切换
  • 大小写切换
  • 光标左右键移动
  • 更换皮肤
    关于拼音输入
    一开始想自己写,但是功能比较弱,后来就集成的谷歌拼音。对谷歌拼音源码进行编译,然后以静态库的形式添加进项目中。
    运行效果如下:
    谷歌输入法

主要步骤
1、加载字库
2、匹配输入
3、对匹配的结果进行分布
4、显示结果
Tips
如果更换运行环境,记得要对谷歌拼音进行重新编译,重新添加静态库

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值