7705|16

66

帖子

1

TA的资源

一粒金砂(初级)

楼主
 

WINCE中编写了一个基于SIP的输入法该如何调整软键盘界面的大小 [复制链接]

WINCE中编写了一个基于SIP的输入法,SIP默认的输入法面板太小,该如何调整软键盘界面的大小?谢谢啊,第一次写书法呵呵。

最新回复

这个方法不知道是怎么实现的!我一直修改不了软键盘的位图与外观!!!  详情 回复 发表于 2010-4-13 09:59
点赞 关注

回复
举报

90

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
没有人懂的写SIP吗?
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
你都编写了输入法,还需要默认的输入法面板干嘛?
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

4
 
CE组件里输入法的面板有大面板和小面板之分的,选成大面板的就OK了
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

5
 
关注中。。。。。
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

6
 
大面板实在太大了,老挡住输入框,网上有挺好用的键盘程序
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

7
 
我现在是用SIP的框架,是想自定义面板,就是还没有找到方法
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(中级)

8
 
LZ可 以去参考自由拼音,可以在CE下编译的
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

9
 
不过最近看了PB下的大键盘代码有点眉目,但现在要把这个工作先方法,先实现输入法的功能和UI在说
 
 
 

回复

87

帖子

0

TA的资源

一粒金砂(初级)

10
 
其实我跟你遇到了同样的问题。如果你解决了请联系我。
 
 
 

回复

85

帖子

0

TA的资源

一粒金砂(初级)

11
 

我知道如何解决这个问题
但是它不够完美
代码如下:

  1. //注意 只写了部分代码 思路就是定义一个输入面板的子窗口
  2. //它还不够完美 因为它没能彻底修改输入面板大小 正在寻找更好的方式
  3. //MyIInputMethod::Deselect (void) 在这个函数里添加下面的代码
  4. //hWndParent 输入面板的句柄
  5.   m_hWnd = CreateWindowEx (0, m_szClassName, m_szClassName,
  6.                 WS_VISIBLE | WS_CHILD , 0,
  7.                 0, m_pUI->GetKBSize().x,
  8.                 m_pUI->GetKBSize().y, hWndParent, (HMENU)100,
  9.                 m_hInst, 0);

  10.         LONG dwStyle = GetWindowLong(hWndParent, GWL_STYLE);
  11.         SetWindowLong(hWndParent, GWL_STYLE, dwStyle & ~WS_CAPTION);
  12.         POINT pt;//自己设置值
  13.         ::MoveWindow(hWndParent, pt.x, pt.y,m_pUI->GetKBSize().x, m_pUI->GetKBSize().y, FALSE);
  14.        
复制代码
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

12
 
关注中
 
 
 

回复

55

帖子

0

TA的资源

一粒金砂(初级)

13
 
select中,用MOVEWINDOW改变窗口大小就可以了
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

14
 
我找到方法,是在IInputMethod2组件的GetInfo中修改系统传入的IMINFO参数rcSipRect属性,然后在IIMCallback组件中setInfo就可以了,呵呵,谢谢各位帮忙。
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

15
 
请问楼主,你最终用组件的方式改变软键盘参数,是怎么弄的?
我在使用IInputMethod2,如下:
         IInputMethod2 *sip = NULL;
         CoInitializeEx(NULL, COINIT_MULTITHREADED);   
         HRESULT hr = CoCreateInstance(CLSID_CMSQwertyIm,   
                 NULL,   
                 CLSCTX_INPROC_SERVER,   
                 IID_IInputMethod2,   
                 (void **)&sip);
         if (FAILED(hr))
         {
                 AfxMessageBox(_T("Fail"));
                         return;
         }
链接时出现错误:
error LNK2001: unresolved external symbol CLSID_CMSQwertyIm

这要怎么解决?
可否交流一下,我的Email是zdate@msn.com
谢谢
 
 
 

回复

94

帖子

0

TA的资源

一粒金砂(初级)

16
 
引用 14 楼 zqizao 的回复:
请问楼主,你最终用组件的方式改变软键盘参数,是怎么弄的?
我在使用IInputMethod2,如下:
? ? ? ? IInputMethod2 *sip = NULL;
CoInitializeEx(NULL, COINIT_MULTITHREADED);?
HRESULT hr = CoCreateInstance(CLSID_CMSQwertyIm,?
NULL,?
CLSCTX_INPROC_SERVER,?
IID_IInputMethod2,?
(void **)&sip);
if (FAILED(hr))
{
AfxMessageBox(_T("Fail"));
return;
}
链接时出现错误:
error LNK2001: unresolved external symbol CLSID_CMSQwertyIm

这要怎么解决?
可否交流一下,我的Email是zdate@msn.com
谢谢



我没有做过你说个方法,我是实现输入法,没有做输入法调用
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

17
 
引用 13 楼 fangta 的回复:
我找到方法,是在IInputMethod2组件的GetInfo中修改系统传入的IMINFO参数rcSipRect属性,然后在IIMCallback组件中setInfo就可以了,呵呵,谢谢各位帮忙。


这个方法不知道是怎么实现的!我一直修改不了软键盘的位图与外观!!!
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表