Recent

Author Topic: KOL-CE and Input Panel (SIP) message hooking  (Read 4670 times)

tomcmok

  • New member
  • *
  • Posts: 9
KOL-CE and Input Panel (SIP) message hooking
« on: May 11, 2008, 03:33:17 pm »
Hello,

  In our aplication we develop for WinCE using KOL we need to properly handle the window size/controls position when user activates SIP to avoid hiding some controls. I've done some research on the net and found out that the message WM_SETTINGCHANGE needs to be hooked (something like that: http://msdn.microsoft.com/en-us/library/bb158715.aspx) and in a response to it we can change the size of some controls on the form.

  Maybe someone of you have some experience with that or any code snippets before we start fighting with that (or is it simple and straightforward like if were done in Delphi?)

Thanks in advance,
Tomasz

yuriy_sydorov

  • Full Member
  • ***
  • Posts: 152
RE: KOL-CE and Input Panel (SIP) message hooking
« Reply #1 on: May 12, 2008, 02:37:31 pm »
Use CeFormSIPAware procedure to resize form when SIP is activated. Also SIP is automatically activated when you tap on edit control.
Use MakeScrollable method of form or other container object to show scroll bar when child controls do not fit.
Also use anchoring for child controls to resize them properly when scrollbar appears or form size is changed.

tomcmok

  • New member
  • *
  • Posts: 9
RE: KOL-CE and Input Panel (SIP) message hooking
« Reply #2 on: May 13, 2008, 01:17:41 am »
yury,

  I've tried those two methods, but I do not see any effect of them. When I activate a SIP it covers the lower part of my findow, where the edit controls are located. The form does not resize or show any scrollbar when SIP appears. Also SIP does not apper automatically when I tap on an edit control. Am I missing something in my Form configuration?

Tomasz

tomcmok

  • New member
  • *
  • Posts: 9
RE: KOL-CE and Input Panel (SIP) message hooking
« Reply #3 on: May 13, 2008, 04:04:34 am »
ok, I've added those two lines into my form's constructor and it seams to work ok now:

  Self.Form.MakeScrollable;
  CeFormSIPAware(Self.Form, True);

thanks for your hints.