Controlling Virtual Keyboard icon visibility

Hi everyone,
I'm writting an application for Windows Mobile 5.0, in Java. I'm using the CrEmE VM v4.12, which supports most SWING components. The VM also supplied a small set of methods to hide and display the keyboard. However, I cannot find any information on how to hide the virtual keyboard icon. It stays on top of my application.
Is there any known way to disable the icon in Java?
Thanks!
Dave

I am encountering this problem right now. So far, the only thing that works for me (and it sounds like you too) is to use
AWT.keyboardHide();
over and over again.
The problem with this approach, is that any time another editable field gains focus, you need to call this method again. My entire application now has focus listeners on all of the editable fields, and whenever they gain focus, I call that method which hides the icon.
I am developing a Swing application for the TDS Ranger, which has a hardware keyboard. There are also two other possibilities for disabling the keyboard entirely, but I have not successfully been able to get them to work yet:
ZeNoKeyboard
http://www.pdagold.com/software/detail.asp?s=155
and
If you have a QWERTY keyboard based Windows Mobile pocket pc and the onboard virtual keyboard annoys you, here�s how you can disable it permanently
Download a registry editor for the Pocket PC and navigate to:
HKEY_Current_User\ControlPanel\Sip\AllowChange and set the value to number 0 and soft reset the device
Anyone else attempt to tackle this problem?
Allen

Similar Messages

  • Can't Login to One Site with a Virtual Keyboard

    I am unable to login to one particular site using Firefox 10.0.2 in Lubuntu 11.10.
    The virtual keyboard is visible but does not react at all.
    I can login OK to several (all) other sites with similar virtual keyboards using the same FF in Lubuntu.
    I can login to the problem site OK using Chromium in the same Lubuntu session.
    I can login to the problem site OK using Firefox 8.0.1 in XP on the same PC.
    So I suppose there must be some setting in FF10.0.2 which is obstructing the virtual keyboard - but which?
    I have been unable to find anything to fix or diagnose this problem so far.
    Thanks for any help!

    I found I can also login OK to the problem site on the same PC, using Ubuntu 10.04LTS & FF 10.0.1.
    So I am just missing some magic ingredient to allow me to login to my site using my normal Lubuntu 11.10 & FF 10.0.2.
    Is this a java issue or what, when virtual keyboards don't respond?
    Can nobody point me to anything which might help me to understand/diagnose/fix this problem?
    Thanks!

  • Why does Onscreen Keyboard Icon not pup up when tapping in a control?

    When using touch screen, tapping in an input field brings up a small keyboard icon nearby (see image).
    This icon allows to open the on screen keyboard near the input element. This works in many applications (notepad, windows explorer, ...).
    My questions:
    Why does this not happen when running an executable built by LabVIEW 2012?
    Can I do anything to enable this?
    Is this supported by LabVIEW 2014? (Only the customer's computer has a touch screen. Can I emulate this for testing?)
    My current work around is to add a button near important controls. When clicked, "TabTip.exe" is started and the focus is set back to the input element. A disadvantage is that the Keyboard opens centered on the screen, probably hiding the active control. And placing a button everywhere is routine work.
    Technical details:
    Windows 7 64bit on a Computer with a touch screen
    Exe built with LabVIEW 12.0.1f5 32bit

    Hi falkpl,
    thanks for your work around.
    I do not use a mouse click solution because I can not distinguish between a mouse click and a touch on the screen. And I prefer to not launch any on screen keyboard on a mouse click. Especially because the on screen keyboard opens anywhere on the screen and can hide the control. This is especially nasty when there is a physical keyboard (which is probably is connected when a mouse is there).
    I could combine the ideas. Clicking in a control could open a VI nearby, which only shows a small keyboard icon. Clicking this icon would start an on screen keyboard (osk.exe, tabtip.exe, a keyboard written in LabVIEW).
    But this is reprogramming the existing behaviour of windows, not really funny.
    Placing the "Keyboard Icon Button" VI nicely would take some time, but should work because all is in LabVIEW. (It would also open when using the mouse, but only a small icon should be ok.) For not hiding the active control by the on screen keyboard, the task gets hard. (Positioning the TabTip.exe window is not easy, and creating [or adapting] an on screen keyboard in pure LabVIEW brings some other problems.)
    Should we vote for Touchpanel-Control-Suite-with-Native-LabVIEW-On-screen-Keyboard or is it different from our needs? (I'd prefer to have the functionality in all control styles, not only in a special "Touch Control" set. But maybe I misunderstand the idea.)
    Greetings,
    shb

  • Disable / Remove Control Key From Pop-Up Virtual Keyboard

    Hello. I am setting up a kiosk system using Microsoft Surface tablets. I wish to use the win8 virtual keyboard along with chrome in kiosk mode to run a web app. I am trying to edit the Keyboard Mapping in registry, which works with the physical keyboard
    but not with the virtual one. All I need to do is disable the control key so users can't do anything with browser shortcuts. Also, I can't just disable them in JS because the browser captures them before they even reach the js engine. 
    Thanks!

    Hi,
    On Screen  Keyboard is one application that is used to simulate the keyboard to send the Key Events to system. It is not a physical keyboard but a built-in tool,
    After a lot of research, I am afraid there isn’t a solid way of disabling the Windows key on virtual keyboard, including the control key.
    Besides, Kiosk mode is  available for Internet Explorer according to the link below, and it is available for Internet Explorer 11 after a test:
    http://support.microsoft.com/kb/154780
    Another thing is, it fails to start the Kiosk mode with Chrome after remove Internet Explorer from the control panel, I tried with a test.
    Regards
    Wade Liu
    TechNet Community Support

  • How do I implement a virtual keyboard?  I will compensate for assistance.

    I have created a simple Adobe Air Windowed Application.  The application uses the mx:HTML controls to load a web page inside my application.  I have tried other means to load the web page but due to formatting issue, all other methods fail to load the page correctly.  Any solution will need to use the mx HTML controls.
    I have added a virtual keyboard to my project.  However, when I enter a text field and then select a key on the virtual keyboard, I lose focus on the text field.
    I understand the concept of event listeners and using a variable to store the text field id and using a focus event to gain the id of the text field.  However, I am not a programmer by no means and this is way above my head.  I am looking for someone to spend 30 or 60 minutes adding the needed code to my project so I can use the virtual keyboard.  I would be willing to send someone a gift card to their favorite restaurant as compensation.
    I have included the 4 files that make up my project (File names are in read text).
    Your help will be greatly appreciated.
    Best regards,
    Joe
    Main.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                                                 xmlns:s="library://ns.adobe.com/flex/spark"
                                                 xmlns:mx="library://ns.adobe.com/flex/mx"
                                                 xmlns:components="com.uibuzz.components.*"
                                                 xmlns:local="*"
                                                 xmlns:keyboard=".*"
                                                 xmlns:panel=".*"
                                                 showStatusBar="false"
                                                 alwaysInFront="true"
                                                 creationComplete="RunFunction(event)">
              <fx:Script>
                        <![CDATA[
                                  import mx.events.FlexEvent;
                                  protected function RunFunction(event:FlexEvent):void
                                            nativeWindow.x = (Capabilities.screenResolutionX - nativeWindow.width) / 2;
                                            nativeWindow.y = (Capabilities.screenResolutionY - nativeWindow.height) / 2;
                                            // Mouse.hide();
                                            html.location = 'https://google.com';
                        ]]>
              </fx:Script>
              <fx:Script>
                        <![CDATA[
                                  // Virtual Keyboard
                                  import com.uibuzz.events.VirtualKeyboardEvent;
                                  protected function HandleKeyEvent(event:VirtualKeyboardEvent):void
                                            trace("Key pressed: " + event.keyLabel);
                        ]]>
              </fx:Script>
              <mx:HTML id="html"
                        paintsDefaultBackground="false"
                        width="100%"
                        height="100%" x="0" y="0"/>
              <fx:Declarations>
                        <!-- Place non-visual elements (e.g., services, value objects) here -->
              </fx:Declarations>
    <components:VirtualKeyboard x="325" y="770" KeyClicked="HandleKeyEvent(event)"/>
    </s:WindowedApplication>
    Main-app.aml
    <?xml version="1.0" encoding="utf-8" standalone="no"?>
    <application xmlns="http://ns.adobe.com/air/application/2.5">
    <!-- Adobe AIR Application Descriptor File Template.
              Specifies parameters for identifying, installing, and launching AIR applications.
              xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.5
                                  The last segment of the namespace specifies the version
                                  of the AIR runtime required for this application to run.
              minimumPatchLevel - The minimum patch level of the AIR runtime required to run
                                  the application. Optional.
    -->
              <!-- A universally unique application identifier. Must be unique across all AIR applications.
              Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
              <id>Main</id>
              <!-- Used as the filename for the application. Required. -->
              <filename>Virtual Keyboard</filename>
              <!-- The name that is displayed in the AIR application installer.
              May have multiple values for each language. See samples or xsd schema file. Optional. -->
              <name></name>
              <!-- A string value of the format <0-999>.<0-999>.<0-999> that represents application version which can be used to check for application upgrade.
              Values can also be 1-part or 2-part. It is not necessary to have a 3-part value.
              An updated version of application must have a versionNumber value higher than the previous version. Required for namespace >= 2.5 . -->
              <versionNumber>1.0.0</versionNumber>
              <!-- A string value (such as "v1", "2.5", or "Alpha 1") that represents the version of the application, as it should be shown to users. Optional. -->
              <!-- <versionLabel></versionLabel> -->
              <!-- Description, displayed in the AIR application installer.
              May have multiple values for each language. See samples or xsd schema file. Optional. -->
              <!-- <description></description> -->
              <!-- Copyright information. Optional -->
              <!-- <copyright></copyright> -->
              <!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
              <!-- <publisherID></publisherID> -->
              <!-- Settings for the application's initial window. Required. -->
              <initialWindow>
                        <!-- The main SWF or HTML file of the application. Required. -->
                        <!-- Note: In Flash Builder, the SWF reference is set automatically. -->
                        <content>[This value will be overwritten by Flash Builder in the output app.xml]</content>
                        <!-- The title of the main window. Optional. -->
                        <!-- <title></title> -->
                        <!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
              <systemChrome>none</systemChrome>
                        <!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
              <transparent>false</transparent>
                        <!-- Whether the window is initially visible. Optional. Default false. -->
              <visible>false</visible>
                        <!-- Whether the user can minimize the window. Optional. Default true. -->
              <minimizable>false</minimizable>
                        <!-- Whether the user can maximize the window. Optional. Default true. -->
              <maximizable>false</maximizable>
                        <!-- Whether the user can resize the window. Optional. Default true. -->
              <resizable>false</resizable>
                        <!-- The window's initial width in pixels. Optional. -->
              <width>1280</width>
                        <!-- The window's initial height in pixels. Optional. -->
              <height>1024</height>
                        <!-- The window's initial x position. Optional. -->
                        <!-- <x></x> -->
                        <!-- The window's initial y position. Optional. -->
                        <!-- <y></y> -->
                        <!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
              <minSize>1280 1024</minSize>
              <!-- <minSize>1024 768</minSize> -->
                        <!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
              <maxSize>1280 1024</maxSize>
              <!-- <maxSize>1024 768</maxSize> -->
              </initialWindow>
              <!-- We recommend omitting the supportedProfiles element, -->
              <!-- which in turn permits your application to be deployed to all -->
              <!-- devices supported by AIR. If you wish to restrict deployment -->
              <!-- (i.e., to only mobile devices) then add this element and list -->
              <!-- only the profiles which your application does support. -->
              <!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
              <!-- The subpath of the standard default installation location to use. Optional. -->
              <!-- <installFolder></installFolder> -->
              <!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
              <!-- <programMenuFolder></programMenuFolder> -->
              <!-- The icon the system uses for the application. For at least one resolution,
              specify the path to a PNG file included in the AIR package. Optional. -->
              <!-- <icon>
                        <image16x16></image16x16>
                        <image32x32></image32x32>
                        <image36x36></image36x36>
                        <image48x48></image48x48>
                        <image72x72></image72x72>
                        <image128x128></image128x128>
              </icon> -->
              <!-- Whether the application handles the update when a user double-clicks an update version
              of the AIR file (true), or the default AIR application installer handles the update (false).
              Optional. Default false. -->
              <!-- <customUpdateUI></customUpdateUI> -->
              <!-- Whether the application can be launched when the user clicks a link in a web browser.
              Optional. Default false. -->
              <!-- <allowBrowserInvocation></allowBrowserInvocation> -->
              <!-- Listing of file types for which the application can register. Optional. -->
              <!-- <fileTypes> -->
                        <!-- Defines one file type. Optional. -->
                        <!-- <fileType> -->
                                  <!-- The name that the system displays for the registered file type. Required. -->
                                  <!-- <name></name> -->
                                  <!-- The extension to register. Required. -->
                                  <!-- <extension></extension> -->
                                  <!-- The description of the file type. Optional. -->
                                  <!-- <description></description> -->
                                  <!-- The MIME content type. -->
                                  <!-- <contentType></contentType> -->
                                  <!-- The icon to display for the file type. Optional. -->
                                  <!-- <icon>
                                            <image16x16></image16x16>
                                            <image32x32></image32x32>
                                            <image48x48></image48x48>
                                            <image128x128></image128x128>
                                  </icon> -->
                        <!-- </fileType> -->
              <!-- </fileTypes> -->
              <!-- Specify Android specific tags that get passed to AndroidManifest.xml file. -->
              <!--<android>
                        <manifestAdditions>
                        <![CDATA[
                                  <manifest android:installLocation="auto">
                                            <uses-permission android:name="android.permission.INTERNET"/>
                                            <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
                                            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
                                            <uses-configuration android:reqFiveWayNav="true"/>
                                            <supports-screens android:normalScreens="true"/>
                                            <uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>
                                            <application android:enabled="true">
                                                      <activity android:excludeFromRecents="false">
                                                                <intent-filter>
                                                                          <action android:name="android.intent.action.MAIN"/>
                                                                          <category android:name="android.intent.category.LAUNCHER"/>
                                                                </intent-filter>
                                                      </activity>
                                            </application>
                                  </manifest>
                        ]]>
                        </manifestAdditions>
              </android> -->
              <!-- End of the schema for adding the android specific tags in AndroidManifest.xml file -->
    </application>
    VirtualKeyboardEvent.as
    package com.uibuzz.events
        import flash.events.Event;
        public class VirtualKeyboardEvent extends Event
            public var keyLabel:String;
            public function VirtualKeyboardEvent(type:String)
                super(type);
            override public function clone():Event
                var eventObj:VirtualKeyboardEvent = new VirtualKeyboardEvent(type);
                eventObj.keyLabel = this.keyLabel;
                return eventObj;
    VirtualKeyboard.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
             xmlns:s="library://ns.adobe.com/flex/spark"
             xmlns:mx="library://ns.adobe.com/flex/mx"
             width="610" height="215" currentState="Lowercase">
              <s:layout>
                        <s:BasicLayout/>
              </s:layout>
        <fx:Metadata>
            [Event(name="KeyClicked", type="com.uibuzz.events.VirtualKeyboardEvent")]
        </fx:Metadata>
        <fx:Script>
            <![CDATA[
                import com.uibuzz.events.VirtualKeyboardEvent;
                protected function handleShiftButton(event:MouseEvent):void
                    if (this.currentState == "Lowercase")
                        this.currentState = "Uppercase";
                    else
                        this.currentState = "Lowercase";
                protected function handleButtonClick(event:MouseEvent):void
                    var e:VirtualKeyboardEvent = new VirtualKeyboardEvent("KeyClicked");
                    e.keyLabel = event.currentTarget.label;
                    dispatchEvent(e);
            ]]>
        </fx:Script>
        <s:states>
            <s:State name="Lowercase"/>
            <s:State name="Uppercase"/>
        </s:states>
              <fx:Declarations>
                        <!-- Place non-visual elements (e.g., services, value objects) here -->
              </fx:Declarations>
        <s:Button id="btn1" x="50" y="10" width="32" height="32" label="1"
                  click="handleButtonClick(event)"
                  label.Uppercase="!"/>
        <s:Button id="btnTilde" x="10" y="10" width="32" height="32" label="`"
                  click="handleButtonClick(event)"
                  label.Uppercase="~"/>
        <s:Button id="btn2" x="90" y="10" width="32" height="32" label="2"
                  click="handleButtonClick(event)"
                  label.Uppercase="@" fontSize.Uppercase="11"/>
        <s:Button id="btn3" x="130" y="10" width="32" height="32" label="3"
                  click="handleButtonClick(event)"
                  label.Uppercase="#"/>
        <s:Button id="btn4" x="170" y="10" width="32" height="32" label="4"
                  click="handleButtonClick(event)"
                  label.Uppercase="$"/>
        <s:Button id="btn5" x="210" y="10" width="32" height="32" label="5"
                  click="handleButtonClick(event)"
                  label.Uppercase="%"/>
        <s:Button id="btn6" x="250" y="10" width="32" height="32" label="6"
                  click="handleButtonClick(event)"
                  label.Uppercase="^"/>
        <s:Button id="btn7" x="290" y="10" width="32" height="32" label="7"
                  click="handleButtonClick(event)"
                  label.Uppercase="&amp;"/>
        <s:Button id="btn8" x="330" y="10" width="32" height="32" label="8"
                  click="handleButtonClick(event)"
                  label.Uppercase="*"/>
        <s:Button id="btn9" x="370" y="10" width="32" height="32" label="9"
                  click="handleButtonClick(event)"
                  label.Uppercase="("/>
        <s:Button id="btn0" x="410" y="10" width="32" height="32" label="0"
                  click="handleButtonClick(event)"
                  label.Uppercase=")"/>
        <s:Button id="btnMinus" x="450" y="10" width="32" height="32" label="-"
                  click="handleButtonClick(event)"
                  label.Uppercase="_"/>
        <s:Button id="btnEquals" x="490" y="10" width="32" height="32" label="="
                  click="handleButtonClick(event)"
                  label.Uppercase="+"/>
        <s:Button id="btnDelete" x="530" y="10" width="70" height="32" label="Delete" click="handleButtonClick(event)"/>
        <s:Button id="btnEnter" x="530" y="90" width="70" height="32" label="Enter" click="handleButtonClick(event)"/>
        <s:Button id="btnRightShift" x="510" y="130" width="70" height="32" label="Shift"
                  click="handleShiftButton(event)"/>
        <s:Button id="btnLeftShift" x="30" y="130" width="70" height="32" label="Shift"
                  click="handleShiftButton(event)"/>
        <s:Button id="btnTab" x="10" y="50" width="50" height="32" label="Tab" click="handleButtonClick(event)"/>
        <s:Button id="btnQ" x="70" y="50" width="32" height="32" label="q"
                  click="handleButtonClick(event)"
                  label.Uppercase="Q"/>
        <s:Button id="btnW" x="110" y="50" width="32" height="32" label="w"
                  click="handleButtonClick(event)"
                  label.Uppercase="W"/>
        <s:Button id="btnE" x="150" y="50" width="32" height="32" label="e"
                  click="handleButtonClick(event)"
                  label.Uppercase="E"/>
        <s:Button id="btnR" x="190" y="50" width="32" height="32" label="r"
                  click="handleButtonClick(event)"
                  label.Uppercase="R"/>
        <s:Button id="btnT" x="230" y="50" width="32" height="32" label="t"
                  click="handleButtonClick(event)"
                  label.Uppercase="T"/>
        <s:Button id="btnY" x="270" y="50" width="32" height="32" label="y"
                  click="handleButtonClick(event)"
                  label.Uppercase="Y"/>
        <s:Button id="btnU" x="310" y="50" width="32" height="32" label="u"
                  click="handleButtonClick(event)"
                  label.Uppercase="U"/>
        <s:Button id="btnI" x="350" y="50" width="32" height="32" label="i"
                  click="handleButtonClick(event)"
                  label.Uppercase="I"/>
        <s:Button id="btnO" x="390" y="50" width="32" height="32" label="o"
                  click="handleButtonClick(event)"
                  label.Uppercase="O"/>
        <s:Button id="btnP" x="430" y="50" width="32" height="32" label="p"
                  click="handleButtonClick(event)"
                  label.Uppercase="P"/>
        <s:Button id="btnLeftBracket" x="470" y="50" width="32" height="32" label="["
                  click="handleButtonClick(event)"
                  label.Uppercase="{"/>
        <s:Button id="btnRightBracket" x="510" y="50" width="32" height="32" label="]"
                  click="handleButtonClick(event)"
                  label.Uppercase="}"/>
        <s:Button id="btnBackSlash" x="550" y="50" width="32" height="32" label="\"
                  click="handleButtonClick(event)"
                  label.Uppercase="|"/>
        <s:Button id="btnA" x="90" y="90" width="32" height="32" label="a"
                  click="handleButtonClick(event)"
                  label.Uppercase="A"/>
        <s:Button id="btnS" x="130" y="90" width="32" height="32" label="s"
                  click="handleButtonClick(event)"
                  label.Uppercase="S"/>
        <s:Button id="btnD" x="170" y="90" width="32" height="32" label="d"
                  click="handleButtonClick(event)"
                  label.Uppercase="D"/>
        <s:Button id="btnF" x="210" y="90" width="32" height="32" label="f"
                  click="handleButtonClick(event)"
                  label.Uppercase="F"/>
        <s:Button id="btnG" x="250" y="90" width="32" height="32" label="g"
                  click="handleButtonClick(event)"
                  label.Uppercase="G"/>
        <s:Button id="btnH" x="290" y="90" width="32" height="32" label="h"
                  click="handleButtonClick(event)"
                  label.Uppercase="H"/>
        <s:Button id="btnJ" x="330" y="90" width="32" height="32" label="j"
                  click="handleButtonClick(event)"
                  label.Uppercase="J"/>
        <s:Button id="btnK" x="370" y="90" width="32" height="32" label="k"
                  click="handleButtonClick(event)"
                  label.Uppercase="K"/>
        <s:Button id="btnL" x="410" y="90" width="32" height="32" label="l"
                  click="handleButtonClick(event)"
                  label.Uppercase="L"/>
        <s:Button id="btnSemiColon" x="450" y="90" width="32" height="32" label=";"
                  click="handleButtonClick(event)"
                  label.Uppercase=":"/>
        <s:Button id="btnQuote" x="490" y="90" width="32" height="32" label="'"
                  click="handleButtonClick(event)"
                  label.Uppercase="&quot;"/>
        <s:Button id="btnZ" x="110" y="130" width="32" height="32" label="z"
                  click="handleButtonClick(event)"
                  label.Uppercase="Z"/>
        <s:Button id="btnX" x="150" y="130" width="32" height="32" label="x"
                  click="handleButtonClick(event)"
                  label.Uppercase="X"/>
        <s:Button id="btnC" x="190" y="130" width="32" height="32" label="c"
                  click="handleButtonClick(event)"
                  label.Uppercase="C"/>
        <s:Button id="btnV" x="230" y="130" width="32" height="32" label="v"
                  click="handleButtonClick(event)"
                  label.Uppercase="V"/>
        <s:Button id="btnB" x="270" y="130" width="32" height="32" label="b"
                  click="handleButtonClick(event)"
                  label.Uppercase="B"/>
        <s:Button id="btnSpace" x="150" y="170" width="272" height="32" label="Space" click="handleButtonClick(event)"/>
        <s:Button id="btnN" x="310" y="130" width="32" height="32" label="n"
                  click="handleButtonClick(event)"
                  label.Uppercase="N"/>
        <s:Button id="btnM" x="350" y="130" width="32" height="32" label="m"
                  click="handleButtonClick(event)"
                  label.Uppercase="M"/>
        <s:Button id="btnComma" x="390" y="130" width="32" height="32" label=","
                  click="handleButtonClick(event)"
                  label.Uppercase="&lt;"/>
        <s:Button id="btnStop" x="430" y="130" width="32" height="32" label="."
                  click="handleButtonClick(event)"
                  label.Uppercase="&gt;"/>
        <s:Button id="btnForwardSlash" x="470" y="130" width="32" height="32" label="/"
                  click="handleButtonClick(event)"
                  label.Uppercase="?"/>
    </s:Group>

    I have created a simple Adobe Air Windowed Application.  The application uses the mx:HTML controls to load a web page inside my application.  I have tried other means to load the web page but due to formatting issue, all other methods fail to load the page correctly.  Any solution will need to use the mx HTML controls.
    I have added a virtual keyboard to my project.  However, when I enter a text field and then select a key on the virtual keyboard, I lose focus on the text field.
    I understand the concept of event listeners and using a variable to store the text field id and using a focus event to gain the id of the text field.  However, I am not a programmer by no means and this is way above my head.  I am looking for someone to spend 30 or 60 minutes adding the needed code to my project so I can use the virtual keyboard.  I would be willing to send someone a gift card to their favorite restaurant as compensation.
    I have included the 4 files that make up my project (File names are in read text).
    Your help will be greatly appreciated.
    Best regards,
    Joe
    Main.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                                                 xmlns:s="library://ns.adobe.com/flex/spark"
                                                 xmlns:mx="library://ns.adobe.com/flex/mx"
                                                 xmlns:components="com.uibuzz.components.*"
                                                 xmlns:local="*"
                                                 xmlns:keyboard=".*"
                                                 xmlns:panel=".*"
                                                 showStatusBar="false"
                                                 alwaysInFront="true"
                                                 creationComplete="RunFunction(event)">
              <fx:Script>
                        <![CDATA[
                                  import mx.events.FlexEvent;
                                  protected function RunFunction(event:FlexEvent):void
                                            nativeWindow.x = (Capabilities.screenResolutionX - nativeWindow.width) / 2;
                                            nativeWindow.y = (Capabilities.screenResolutionY - nativeWindow.height) / 2;
                                            // Mouse.hide();
                                            html.location = 'https://google.com';
                        ]]>
              </fx:Script>
              <fx:Script>
                        <![CDATA[
                                  // Virtual Keyboard
                                  import com.uibuzz.events.VirtualKeyboardEvent;
                                  protected function HandleKeyEvent(event:VirtualKeyboardEvent):void
                                            trace("Key pressed: " + event.keyLabel);
                        ]]>
              </fx:Script>
              <mx:HTML id="html"
                        paintsDefaultBackground="false"
                        width="100%"
                        height="100%" x="0" y="0"/>
              <fx:Declarations>
                        <!-- Place non-visual elements (e.g., services, value objects) here -->
              </fx:Declarations>
    <components:VirtualKeyboard x="325" y="770" KeyClicked="HandleKeyEvent(event)"/>
    </s:WindowedApplication>
    Main-app.aml
    <?xml version="1.0" encoding="utf-8" standalone="no"?>
    <application xmlns="http://ns.adobe.com/air/application/2.5">
    <!-- Adobe AIR Application Descriptor File Template.
              Specifies parameters for identifying, installing, and launching AIR applications.
              xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/2.5
                                  The last segment of the namespace specifies the version
                                  of the AIR runtime required for this application to run.
              minimumPatchLevel - The minimum patch level of the AIR runtime required to run
                                  the application. Optional.
    -->
              <!-- A universally unique application identifier. Must be unique across all AIR applications.
              Using a reverse DNS-style name as the id is recommended. (Eg. com.example.ExampleApplication.) Required. -->
              <id>Main</id>
              <!-- Used as the filename for the application. Required. -->
              <filename>Virtual Keyboard</filename>
              <!-- The name that is displayed in the AIR application installer.
              May have multiple values for each language. See samples or xsd schema file. Optional. -->
              <name></name>
              <!-- A string value of the format <0-999>.<0-999>.<0-999> that represents application version which can be used to check for application upgrade.
              Values can also be 1-part or 2-part. It is not necessary to have a 3-part value.
              An updated version of application must have a versionNumber value higher than the previous version. Required for namespace >= 2.5 . -->
              <versionNumber>1.0.0</versionNumber>
              <!-- A string value (such as "v1", "2.5", or "Alpha 1") that represents the version of the application, as it should be shown to users. Optional. -->
              <!-- <versionLabel></versionLabel> -->
              <!-- Description, displayed in the AIR application installer.
              May have multiple values for each language. See samples or xsd schema file. Optional. -->
              <!-- <description></description> -->
              <!-- Copyright information. Optional -->
              <!-- <copyright></copyright> -->
              <!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
              <!-- <publisherID></publisherID> -->
              <!-- Settings for the application's initial window. Required. -->
              <initialWindow>
                        <!-- The main SWF or HTML file of the application. Required. -->
                        <!-- Note: In Flash Builder, the SWF reference is set automatically. -->
                        <content>[This value will be overwritten by Flash Builder in the output app.xml]</content>
                        <!-- The title of the main window. Optional. -->
                        <!-- <title></title> -->
                        <!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
              <systemChrome>none</systemChrome>
                        <!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
              <transparent>false</transparent>
                        <!-- Whether the window is initially visible. Optional. Default false. -->
              <visible>false</visible>
                        <!-- Whether the user can minimize the window. Optional. Default true. -->
              <minimizable>false</minimizable>
                        <!-- Whether the user can maximize the window. Optional. Default true. -->
              <maximizable>false</maximizable>
                        <!-- Whether the user can resize the window. Optional. Default true. -->
              <resizable>false</resizable>
                        <!-- The window's initial width in pixels. Optional. -->
              <width>1280</width>
                        <!-- The window's initial height in pixels. Optional. -->
              <height>1024</height>
                        <!-- The window's initial x position. Optional. -->
                        <!-- <x></x> -->
                        <!-- The window's initial y position. Optional. -->
                        <!-- <y></y> -->
                        <!-- The window's minimum size, specified as a width/height pair in pixels, such as "400 200". Optional. -->
              <minSize>1280 1024</minSize>
              <!-- <minSize>1024 768</minSize> -->
                        <!-- The window's initial maximum size, specified as a width/height pair in pixels, such as "1600 1200". Optional. -->
              <maxSize>1280 1024</maxSize>
              <!-- <maxSize>1024 768</maxSize> -->
              </initialWindow>
              <!-- We recommend omitting the supportedProfiles element, -->
              <!-- which in turn permits your application to be deployed to all -->
              <!-- devices supported by AIR. If you wish to restrict deployment -->
              <!-- (i.e., to only mobile devices) then add this element and list -->
              <!-- only the profiles which your application does support. -->
              <!-- <supportedProfiles>desktop extendedDesktop mobileDevice extendedMobileDevice</supportedProfiles> -->
              <!-- The subpath of the standard default installation location to use. Optional. -->
              <!-- <installFolder></installFolder> -->
              <!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
              <!-- <programMenuFolder></programMenuFolder> -->
              <!-- The icon the system uses for the application. For at least one resolution,
              specify the path to a PNG file included in the AIR package. Optional. -->
              <!-- <icon>
                        <image16x16></image16x16>
                        <image32x32></image32x32>
                        <image36x36></image36x36>
                        <image48x48></image48x48>
                        <image72x72></image72x72>
                        <image128x128></image128x128>
              </icon> -->
              <!-- Whether the application handles the update when a user double-clicks an update version
              of the AIR file (true), or the default AIR application installer handles the update (false).
              Optional. Default false. -->
              <!-- <customUpdateUI></customUpdateUI> -->
              <!-- Whether the application can be launched when the user clicks a link in a web browser.
              Optional. Default false. -->
              <!-- <allowBrowserInvocation></allowBrowserInvocation> -->
              <!-- Listing of file types for which the application can register. Optional. -->
              <!-- <fileTypes> -->
                        <!-- Defines one file type. Optional. -->
                        <!-- <fileType> -->
                                  <!-- The name that the system displays for the registered file type. Required. -->
                                  <!-- <name></name> -->
                                  <!-- The extension to register. Required. -->
                                  <!-- <extension></extension> -->
                                  <!-- The description of the file type. Optional. -->
                                  <!-- <description></description> -->
                                  <!-- The MIME content type. -->
                                  <!-- <contentType></contentType> -->
                                  <!-- The icon to display for the file type. Optional. -->
                                  <!-- <icon>
                                            <image16x16></image16x16>
                                            <image32x32></image32x32>
                                            <image48x48></image48x48>
                                            <image128x128></image128x128>
                                  </icon> -->
                        <!-- </fileType> -->
              <!-- </fileTypes> -->
              <!-- Specify Android specific tags that get passed to AndroidManifest.xml file. -->
              <!--<android>
                        <manifestAdditions>
                        <![CDATA[
                                  <manifest android:installLocation="auto">
                                            <uses-permission android:name="android.permission.INTERNET"/>
                                            <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
                                            <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
                                            <uses-configuration android:reqFiveWayNav="true"/>
                                            <supports-screens android:normalScreens="true"/>
                                            <uses-feature android:required="true" android:name="android.hardware.touchscreen.multitouch"/>
                                            <application android:enabled="true">
                                                      <activity android:excludeFromRecents="false">
                                                                <intent-filter>
                                                                          <action android:name="android.intent.action.MAIN"/>
                                                                          <category android:name="android.intent.category.LAUNCHER"/>
                                                                </intent-filter>
                                                      </activity>
                                            </application>
                                  </manifest>
                        ]]>
                        </manifestAdditions>
              </android> -->
              <!-- End of the schema for adding the android specific tags in AndroidManifest.xml file -->
    </application>
    VirtualKeyboardEvent.as
    package com.uibuzz.events
        import flash.events.Event;
        public class VirtualKeyboardEvent extends Event
            public var keyLabel:String;
            public function VirtualKeyboardEvent(type:String)
                super(type);
            override public function clone():Event
                var eventObj:VirtualKeyboardEvent = new VirtualKeyboardEvent(type);
                eventObj.keyLabel = this.keyLabel;
                return eventObj;
    VirtualKeyboard.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
             xmlns:s="library://ns.adobe.com/flex/spark"
             xmlns:mx="library://ns.adobe.com/flex/mx"
             width="610" height="215" currentState="Lowercase">
              <s:layout>
                        <s:BasicLayout/>
              </s:layout>
        <fx:Metadata>
            [Event(name="KeyClicked", type="com.uibuzz.events.VirtualKeyboardEvent")]
        </fx:Metadata>
        <fx:Script>
            <![CDATA[
                import com.uibuzz.events.VirtualKeyboardEvent;
                protected function handleShiftButton(event:MouseEvent):void
                    if (this.currentState == "Lowercase")
                        this.currentState = "Uppercase";
                    else
                        this.currentState = "Lowercase";
                protected function handleButtonClick(event:MouseEvent):void
                    var e:VirtualKeyboardEvent = new VirtualKeyboardEvent("KeyClicked");
                    e.keyLabel = event.currentTarget.label;
                    dispatchEvent(e);
            ]]>
        </fx:Script>
        <s:states>
            <s:State name="Lowercase"/>
            <s:State name="Uppercase"/>
        </s:states>
              <fx:Declarations>
                        <!-- Place non-visual elements (e.g., services, value objects) here -->
              </fx:Declarations>
        <s:Button id="btn1" x="50" y="10" width="32" height="32" label="1"
                  click="handleButtonClick(event)"
                  label.Uppercase="!"/>
        <s:Button id="btnTilde" x="10" y="10" width="32" height="32" label="`"
                  click="handleButtonClick(event)"
                  label.Uppercase="~"/>
        <s:Button id="btn2" x="90" y="10" width="32" height="32" label="2"
                  click="handleButtonClick(event)"
                  label.Uppercase="@" fontSize.Uppercase="11"/>
        <s:Button id="btn3" x="130" y="10" width="32" height="32" label="3"
                  click="handleButtonClick(event)"
                  label.Uppercase="#"/>
        <s:Button id="btn4" x="170" y="10" width="32" height="32" label="4"
                  click="handleButtonClick(event)"
                  label.Uppercase="$"/>
        <s:Button id="btn5" x="210" y="10" width="32" height="32" label="5"
                  click="handleButtonClick(event)"
                  label.Uppercase="%"/>
        <s:Button id="btn6" x="250" y="10" width="32" height="32" label="6"
                  click="handleButtonClick(event)"
                  label.Uppercase="^"/>
        <s:Button id="btn7" x="290" y="10" width="32" height="32" label="7"
                  click="handleButtonClick(event)"
                  label.Uppercase="&amp;"/>
        <s:Button id="btn8" x="330" y="10" width="32" height="32" label="8"
                  click="handleButtonClick(event)"
                  label.Uppercase="*"/>
        <s:Button id="btn9" x="370" y="10" width="32" height="32" label="9"
                  click="handleButtonClick(event)"
                  label.Uppercase="("/>
        <s:Button id="btn0" x="410" y="10" width="32" height="32" label="0"
                  click="handleButtonClick(event)"
                  label.Uppercase=")"/>
        <s:Button id="btnMinus" x="450" y="10" width="32" height="32" label="-"
                  click="handleButtonClick(event)"
                  label.Uppercase="_"/>
        <s:Button id="btnEquals" x="490" y="10" width="32" height="32" label="="
                  click="handleButtonClick(event)"
                  label.Uppercase="+"/>
        <s:Button id="btnDelete" x="530" y="10" width="70" height="32" label="Delete" click="handleButtonClick(event)"/>
        <s:Button id="btnEnter" x="530" y="90" width="70" height="32" label="Enter" click="handleButtonClick(event)"/>
        <s:Button id="btnRightShift" x="510" y="130" width="70" height="32" label="Shift"
                  click="handleShiftButton(event)"/>
        <s:Button id="btnLeftShift" x="30" y="130" width="70" height="32" label="Shift"
                  click="handleShiftButton(event)"/>
        <s:Button id="btnTab" x="10" y="50" width="50" height="32" label="Tab" click="handleButtonClick(event)"/>
        <s:Button id="btnQ" x="70" y="50" width="32" height="32" label="q"
                  click="handleButtonClick(event)"
                  label.Uppercase="Q"/>
        <s:Button id="btnW" x="110" y="50" width="32" height="32" label="w"
                  click="handleButtonClick(event)"
                  label.Uppercase="W"/>
        <s:Button id="btnE" x="150" y="50" width="32" height="32" label="e"
                  click="handleButtonClick(event)"
                  label.Uppercase="E"/>
        <s:Button id="btnR" x="190" y="50" width="32" height="32" label="r"
                  click="handleButtonClick(event)"
                  label.Uppercase="R"/>
        <s:Button id="btnT" x="230" y="50" width="32" height="32" label="t"
                  click="handleButtonClick(event)"
                  label.Uppercase="T"/>
        <s:Button id="btnY" x="270" y="50" width="32" height="32" label="y"
                  click="handleButtonClick(event)"
                  label.Uppercase="Y"/>
        <s:Button id="btnU" x="310" y="50" width="32" height="32" label="u"
                  click="handleButtonClick(event)"
                  label.Uppercase="U"/>
        <s:Button id="btnI" x="350" y="50" width="32" height="32" label="i"
                  click="handleButtonClick(event)"
                  label.Uppercase="I"/>
        <s:Button id="btnO" x="390" y="50" width="32" height="32" label="o"
                  click="handleButtonClick(event)"
                  label.Uppercase="O"/>
        <s:Button id="btnP" x="430" y="50" width="32" height="32" label="p"
                  click="handleButtonClick(event)"
                  label.Uppercase="P"/>
        <s:Button id="btnLeftBracket" x="470" y="50" width="32" height="32" label="["
                  click="handleButtonClick(event)"
                  label.Uppercase="{"/>
        <s:Button id="btnRightBracket" x="510" y="50" width="32" height="32" label="]"
                  click="handleButtonClick(event)"
                  label.Uppercase="}"/>
        <s:Button id="btnBackSlash" x="550" y="50" width="32" height="32" label="\"
                  click="handleButtonClick(event)"
                  label.Uppercase="|"/>
        <s:Button id="btnA" x="90" y="90" width="32" height="32" label="a"
                  click="handleButtonClick(event)"
                  label.Uppercase="A"/>
        <s:Button id="btnS" x="130" y="90" width="32" height="32" label="s"
                  click="handleButtonClick(event)"
                  label.Uppercase="S"/>
        <s:Button id="btnD" x="170" y="90" width="32" height="32" label="d"
                  click="handleButtonClick(event)"
                  label.Uppercase="D"/>
        <s:Button id="btnF" x="210" y="90" width="32" height="32" label="f"
                  click="handleButtonClick(event)"
                  label.Uppercase="F"/>
        <s:Button id="btnG" x="250" y="90" width="32" height="32" label="g"
                  click="handleButtonClick(event)"
                  label.Uppercase="G"/>
        <s:Button id="btnH" x="290" y="90" width="32" height="32" label="h"
                  click="handleButtonClick(event)"
                  label.Uppercase="H"/>
        <s:Button id="btnJ" x="330" y="90" width="32" height="32" label="j"
                  click="handleButtonClick(event)"
                  label.Uppercase="J"/>
        <s:Button id="btnK" x="370" y="90" width="32" height="32" label="k"
                  click="handleButtonClick(event)"
                  label.Uppercase="K"/>
        <s:Button id="btnL" x="410" y="90" width="32" height="32" label="l"
                  click="handleButtonClick(event)"
                  label.Uppercase="L"/>
        <s:Button id="btnSemiColon" x="450" y="90" width="32" height="32" label=";"
                  click="handleButtonClick(event)"
                  label.Uppercase=":"/>
        <s:Button id="btnQuote" x="490" y="90" width="32" height="32" label="'"
                  click="handleButtonClick(event)"
                  label.Uppercase="&quot;"/>
        <s:Button id="btnZ" x="110" y="130" width="32" height="32" label="z"
                  click="handleButtonClick(event)"
                  label.Uppercase="Z"/>
        <s:Button id="btnX" x="150" y="130" width="32" height="32" label="x"
                  click="handleButtonClick(event)"
                  label.Uppercase="X"/>
        <s:Button id="btnC" x="190" y="130" width="32" height="32" label="c"
                  click="handleButtonClick(event)"
                  label.Uppercase="C"/>
        <s:Button id="btnV" x="230" y="130" width="32" height="32" label="v"
                  click="handleButtonClick(event)"
                  label.Uppercase="V"/>
        <s:Button id="btnB" x="270" y="130" width="32" height="32" label="b"
                  click="handleButtonClick(event)"
                  label.Uppercase="B"/>
        <s:Button id="btnSpace" x="150" y="170" width="272" height="32" label="Space" click="handleButtonClick(event)"/>
        <s:Button id="btnN" x="310" y="130" width="32" height="32" label="n"
                  click="handleButtonClick(event)"
                  label.Uppercase="N"/>
        <s:Button id="btnM" x="350" y="130" width="32" height="32" label="m"
                  click="handleButtonClick(event)"
                  label.Uppercase="M"/>
        <s:Button id="btnComma" x="390" y="130" width="32" height="32" label=","
                  click="handleButtonClick(event)"
                  label.Uppercase="&lt;"/>
        <s:Button id="btnStop" x="430" y="130" width="32" height="32" label="."
                  click="handleButtonClick(event)"
                  label.Uppercase="&gt;"/>
        <s:Button id="btnForwardSlash" x="470" y="130" width="32" height="32" label="/"
                  click="handleButtonClick(event)"
                  label.Uppercase="?"/>
    </s:Group>

  • How to recognize vitual keyboard is visible (iPAQ 3955)

    I'm running a java application on the iPAQ 3955 PDA, with Jeode runtime. I have a need to recognize (from the java app) when the virtual keyboard has been elevated, so that I can collapse my application somewhat to accomodate the keyboard on the little screen. If I don't do this, some of my text fields are covered up. Any ideas? Thanks.

    Hi,
    well I think there is no way to detect if the keyboard is visible, except Jeode has implemented this function. But then you should have recognized it in the API I guess. (I am not using Jeode)
    Another idea is that the keyboard can only come up if the stylus tap is presses (I hope thats the name of the symbol on the lower right). Thefor you have to listen for keyevents and if you detect that the stylus tap is pressed (or any other key on the keyboard) you know that the keyboard is visible. If the tab ist pressed again, you know that the keyboard is not visible anymore.
    Below is an exceprt from the book Programming Microsoft Windows CE. Altough the book is written for the use of embedded Vusual C++ I think it will give you an short overview on which keys are available.
    I don't know what codes are provided by Jeode, I just remember that I had some difficulties on handling keyevent with Suns Personal Java Runtime, because that one dind't forward all keys :-(
    Wish you good luck and have fun,
    FReAK
    Figure 3-1 Virtual key values in relation to the keys on the keyboard. Not all keys will be on all keyboards.
    Constant Value Keyboard Equivalent
    VK_LBUTTON 01 Stylus tap
    VK_RBUTTON 02 Mouse right button4
    VK_CANCEL 03 Control-break processing
    VK_RBUTTON 04 Mouse middle button4
    -- 05�07 Undefined
    VK_BACK 08 Backspace key
    VK_TAB 09 Tab key
    -- 0A�0B Undefined
    VK_CLEAR 0C Clear key
    VK_RETURN 0D Enter key
    -- 0E�0F Undefined
    VK_SHIFT 10 Shift key
    VK_CONTROL 11 Ctrl key
    VK_MENU 12 Alt key
    VK_CAPITAL 14 Caps Lock key
    -- 15�19 Reserved for Kanji systems
    -- 1A Undefined
    VK_ESCAPE 1B Escape key
    -- 1C�1F Reserved for Kanji systems
    VK_SPACE 20 Spacebar
    VK_PRIOR 21 Page Up key
    VK_NEXT 22 Page Down key
    VK_END 23 End key
    VK_HOME 24 Home key
    VK_LEFT 25 Left Arrow key
    VK_UP 26 Up Arrow key
    VK_RIGHT 27 Right Arrow key
    VK_DOWN 28 Down Arrow key
    VK_SELECT 29 Select key
    -- 2A Original equipment manufacturer (OEM)�specific
    VK_EXECUTE 2B Execute key
    VK_SNAPSHOT 2C Print Screen key for Windows 3.0 and later
    VK_INSERT 2D Insert1
    VK_DELETE 2E Delete2
    VK_HELP 2F Help key
    VK_0�VK_9 30�39 0�9 keys
    -- 3A�40 Undefined
    VK_A�VK_Z 41�5A A through Z keys
    VK_LWIN 5B Windows key
    VK_RWIN 5C Windows key1
    VK_APPS 5D
    -- 5E�5F Undefined
    VK_NUMPAD0�9 60�69 Numeric keypad 0�9 keys
    VK_MULTIPLY 6A Numeric keypad Asterisk (*) key
    VK_ADD 6B Numeric keypad Plus sign (+) key
    VK_SEPARATOR 6C Separator key
    VK_SUBTRACT 6D Numeric keypad Minus sign (-) key
    VK_DECIMAL 6E Numeric keypad Period (.) key
    VK_DIVIDE 6F Numeric keypad Slash mark (/) key
    VK_F1�VK_F24 70�87 F1�F241
    -- 88�8F Unassigned
    VK_NUMLOCK 90 Num Lock1
    VK_SCROLL 91 Scroll Lock1
    -- 92�9F Unassigned
    VK_LSHIFT A0 Left Shift3
    VK_RSHIFT A1 Right Shift3
    VK_LCONTROL A2 Left Control3
    VK_RCONTROL A3 Right Control3
    VK_LMENU A4 Left Alt3
    VK_RMENU A5 Right Alt3
    -- A6�B9 Unassigned
    VK_SEMICOLON BA ; key
    VK_EQUAL BB = key
    VK_COMMA BC , key
    VK_HYPHEN BD - key
    VK_PERIOD BE . key
    VK_SLASH BF / key
    VK_BACKQUOTE C0 � key
    -- C1�DA Unassigned5
    VK_LBRACKET DB [ key
    VK_BACKSLASH DC \ key
    VK_RBRACKET DD ] key
    VK_APOSTROPHE DE ` key
    VK_OFF DF Power button
    -- E5 Unassigned
    -- E6 OEM-specific
    -- E7�E8 Unassigned
    -- E9�F5 OEM-specific
    VK_ATTN F6
    VK_CRSEL F7
    VK_EXSEL F8
    VK_EREOF F9
    VK_PLAY FA
    VK_ZOOM FB
    VK_NONAME FC
    VK_PA1 FD
    VK_OEM_CLEAR FE

  • VIRTUAL KEYBOARD SpaceKey not autosizing

    Hello, So my space button wont autosize on the virtual keyboard. It creates the blank space but doesnt autosize to it, after inputing any other key it autosizes correctly. Could use an extra set of eyes to see what im doing wrong
    Ill post any relevant code down here
    //spaces;
    key_space.addEventListener(MouseEvent.CLICK, spaceClickListener);
    function spaceClickListener(e:MouseEvent):void
              if (control == "on" && menu.visible == false )
                        strehrows3();
                        textSelect.appendText(" ");
                        shift = false;
                        //border control;
                        if (textSelect.width <= 134.05)
                                  // textSelect.autoSize = TextFieldAutoSize.RIGHT;
                                  textSelect.x = 1.2;
                        if (textSelect.width >= 134.05)
                                  ///textSelect.autoSize = TextFieldAutoSize.RIGHT;
                                  textSelect.x =  1.2-(textSelect.width-134.05);
                        //inputTxt.autoSize = TextFieldAutoSize.NONE;
                        textSelect.setSelection(textSelect.length,textSelect.length);
                        focuser();
                        strehrows3();
                        _fontSize();
    function _keys(event:MouseEvent):void
              strehrows3();
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(event);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
              if (control == "on" && menu.visible == false )
                        if (! shift)
                                  textSelect.appendText(letterButtonSmall[event.target.name]);
                        else
                                  textSelect.appendText(letterButtonCaps[event.target.name]);
                                  shift = false;
                        savedTxt = textSelect.text;
                        textSelect.setSelection(textSelect.length,textSelect.length);
                        if (textSelect.width <= 134.05 && textSelect == inputClips.inputTxt )
                                  textSelect.autoSize = TextFieldAutoSize.RIGHT;
                                  textSelect.x = 1.2;
                        if (textSelect.width >= 134.05 && textSelect == inputClips.inputTxt)
                                  textSelect.autoSize = TextFieldAutoSize.RIGHT;
                                  textSelect.x =  1.2-(textSelect.width-134.05);
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(event);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
                        focuser();
                        strehrows3();
                        _fontSize();

    Been struggling with this, I now made the space function nearly identical to my keyboard function.
    Pressing the space key doesnt autoformat the text for some reason Im having trouble understanding, it adds the space but wont show up until I enter an actual letter or number.
    function _keys(event:MouseEvent):void
              strehrows3();
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(event);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
              if (control == "on" && menu.visible == false )
                        if (! shift)
                                  textSelect.appendText(letterButtonSmall[event.target.name]);
                        else
                                  textSelect.appendText(letterButtonCaps[event.target.name]);
                                  shift = false;
                        savedTxt = textSelect.text;
                        textSelect.setSelection(textSelect.length,textSelect.length);
                        if (textSelect.width <= 134.05 && textSelect == inputClips.inputTxt )
                                  textSelect.autoSize = TextFieldAutoSize.LEFT;
                                  textSelect.x = 1.2;
                        if (textSelect.width >= 134.05 && textSelect == inputClips.inputTxt)
                                  textSelect.autoSize = TextFieldAutoSize.LEFT;
                                  textSelect.x =  1.2-(textSelect.width-134.05);
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(event);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
                        focuser();
                        strehrows3();
                        _fontSize();
    //spaces;
    key_space.addEventListener(MouseEvent.CLICK, spaceClickListener);
    function spaceClickListener(e:MouseEvent):void
              strehrows3();
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(null);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
              if (control == "on" && menu.visible == false )
                        if (! shift)
                                  textSelect.appendText(" ");
                        else
                                  textSelect.appendText(" ");
                                  shift = false;
                        savedTxt = textSelect.text;
                        textSelect.setSelection(textSelect.length,textSelect.length);
                        if (textSelect.width <= 134.05 && textSelect == inputClips.inputTxt )
                                  textSelect.autoSize = TextFieldAutoSize.LEFT;
                                  textSelect.x = 1.2;
                        if (textSelect.width >= 134.05 && textSelect == inputClips.inputTxt)
                                  textSelect.autoSize = TextFieldAutoSize.LEFT;
                                  textSelect.x =  1.2-(textSelect.width-134.05);
              textSelect.setSelection(textSelect.length,textSelect.length);
              if (electoff.currentFrame == 2)
                        ajWidth(null);
              if (terminalinput.currentFrame == 2)
                        TrWidth(null);
                        focuser();
                        strehrows3();
                        _fontSize();

  • How can I create a virtual keyboard shortcut in my dock?

    So I started using my MacBook Pro as a device I connect to my TV. I have an HDMI adapter, and, after setting up the display and sound, it is awesome! I even purchased a Trackpad so I can sit on my couch and navigate. The cost of the adapter and Trackpad are more than paid for with my canceling of cable.
    Anyway, my question is about the virtual keyboard in OS X. It doesn't happen often, but I sometimes have to type in a user name or password for sites. I know how to go through "System Preferences", "Universal Access", and then "Keyboard Preferences" to turn it on, but is there a faster way?
    What I really want to know is if I can create a shortcut in my dock for the virtual keyboard?
    If not, does anyone know of any third party, virtual keyboard applications that would work this way?
    Thanks!

    @ KA-BOOM!!
    Okay, try this:
    1. Copy KeyboardViewer.app to your Applications folder (or wherever you want it).
    2. Edit this copied KeyboardViewer.app bundle with TextWrangler or a comparable text editor or a property list editor, changing a single character in KeyboardViewer.app/Contents/Info.plist so that the value for NSUIElement is 0 instead of 1.
    3. Drag the new KeyboardViewer.app to the Dock.
    When you want to quit the application, do so from the Dock icon.  (If you click the red button--the usual way to quit KeyboardViewer when it has been invoked from the menu extra--the application will keep running facelessly in the background and you won't be able to get the KeyboardViewer GUI back again unless you kill its process or restart.  All in all, quitting from the Dock icon is the quickest solution.)

  • How to enter text in text input box using virtual keyboard in flex application

    Re: how to enter text in text input box using virtual keyboard in flex application
    hi,
    im using flash builder 4,
    i  designed virtual keyboard, i have to update the text in text input box  continously by using virtual keyboard.
    i used button events.i did  some mistake there.
    can some one help me out of tat.
    thanks  in advance.
    i have included my mxml program with this.
    virtualkeyboard.mxml
    <?xml  version="1.0" encoding="utf-8"?>
    <s:Application  xmlns:fx="http://ns.adobe.com/mxml/2009"
                   xmlns:s="library://ns.adobe.com/flex/spark"
                    xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955"  minHeight="600" creationComplete="initfunc()">
         <fx:Script>
            <![CDATA[
                import  mx.controls.Alert;
                private function initfunc():void
                    b1.addEventListener(MouseEvent.CLICK,handleEvent);
                     b2.addEventListener(MouseEvent.CLICK,handleEvent);
                     b3.addEventListener(MouseEvent.CLICK,handleEvent);
                     b4.addEventListener(MouseEvent.CLICK,handleEvent);
                     b5.addEventListener(MouseEvent.CLICK,handleEvent);
                     b6.addEventListener(MouseEvent.CLICK,handleEvent);
                     b7.addEventListener(MouseEvent.CLICK,handleEvent);
                     b8.addEventListener(MouseEvent.CLICK,handleEvent);
                     b9.addEventListener(MouseEvent.CLICK,handleEvent);
                     b10.addEventListener(MouseEvent.CLICK,handleEvent);
                     b11.addEventListener(MouseEvent.CLICK,handleEvent);
                     b12.addEventListener(MouseEvent.CLICK,handleEvent);
                     b13.addEventListener(MouseEvent.CLICK,handleEvent);
                     b14.addEventListener(MouseEvent.CLICK,handleEvent);
                     b15.addEventListener(MouseEvent.CLICK,handleEvent);
                     b16.addEventListener(MouseEvent.CLICK,handleEvent);
                     b17.addEventListener(MouseEvent.CLICK,handleEvent);
                     b18.addEventListener(MouseEvent.CLICK,handleEvent);
                     b19.addEventListener(MouseEvent.CLICK,handleEvent);
                     b20.addEventListener(MouseEvent.CLICK,handleEvent);
                     b21.addEventListener(MouseEvent.CLICK,handleEvent);
                     b22.addEventListener(MouseEvent.CLICK,handleEvent);
                     b23.addEventListener(MouseEvent.CLICK,handleEvent);
                     b24.addEventListener(MouseEvent.CLICK,handleEvent);
                     b25.addEventListener(MouseEvent.CLICK,handleEvent);
                     b26.addEventListener(MouseEvent.CLICK,handleEvent);
                     b27.addEventListener(MouseEvent.CLICK,handleEvent);
                     b28.addEventListener(MouseEvent.CLICK,handleEvent);
                     b29.addEventListener(MouseEvent.CLICK,handleEvent);
                     b30.addEventListener(MouseEvent.CLICK,handleEvent);
                     b31.addEventListener(MouseEvent.CLICK,handleEvent);
                     b32.addEventListener(MouseEvent.CLICK,handleEvent);
                     b33.addEventListener(MouseEvent.CLICK,handleEvent);
                     b34.addEventListener(MouseEvent.CLICK,handleEvent);
                     b35.addEventListener(MouseEvent.CLICK,handleEvent);
                     b36.addEventListener(MouseEvent.CLICK,handleEvent);
                     b37.addEventListener(MouseEvent.CLICK,handleEvent);
                     b38.addEventListener(MouseEvent.CLICK,handleEvent);
                     b39.addEventListener(MouseEvent.CLICK,handleEvent);
                     b40.addEventListener(MouseEvent.CLICK,handleEvent);
                     b41.addEventListener(MouseEvent.CLICK,handleEvent);
                     b42.addEventListener(MouseEvent.CLICK,handleEvent);
                     b43.addEventListener(MouseEvent.CLICK,handleEvent);
                     b44.addEventListener(MouseEvent.CLICK,handleEvent);
                     b45.addEventListener(MouseEvent.CLICK,handleEvent);
                     b46.addEventListener(MouseEvent.CLICK,handleEvent);
                     b47.addEventListener(MouseEvent.CLICK,handleEvent);
                     b48.addEventListener(MouseEvent.CLICK,handleEvent);
                     b49.addEventListener(MouseEvent.CLICK,handleEvent);
                     b50.addEventListener(MouseEvent.CLICK,handleEvent);
                     b51.addEventListener(MouseEvent.CLICK,handleEvent);
                     b52.addEventListener(MouseEvent.CLICK,handleEvent);
                     b53.addEventListener(MouseEvent.CLICK,handleEvent);               
                public function handleEvent ( e :  MouseEvent ) : void
                    var a:String=  e.target.name ;
                    Alert.show(e.target.name);
                   var b:String=null;
                    switch(a)
                        case "Button20":
                           b=textbox.text;
                            //textbox.text="a";
                             textbox.text=b+"a";
                            break;
                       case "Button21":
                            //textbox.text="b";
                           textbox.text=b+"b";
                           break;
                       default:
                           //textbox.text="s";
                            textbox.text=b+"s";
            ]]>
        </fx:Script>
        <s:Panel  x="43" y="82" width="527" height="213">
          <mx:Button  x="71" y="86" id="b1" label="1" width="30" height="24"/>
             <s:Button x="180" y="86"  id="b2" label="5" width="30"  height="24"/>
            <s:Button x="127" y="86"  id="b3"  label="3" width="30" height="24"/>
            <s:Button x="99"  y="86"  id="b4" label="2" width="30" height="24"/>
             <s:Button x="323" y="86"  id="b5" label="0" width="30"  height="24"/>
            <s:Button x="294" y="86"  id="b6"  label="9" width="30" height="24"/>
            <s:Button x="265"  y="86"   id="b7" label="8" width="30" height="24"/>
             <s:Button x="237" y="86"  id="b8" label="7" width="30"  height="24"/>
            <s:Button x="209" y="86"  id="b9"  label="6" width="30" height="24"/>
            <s:Button x="42"  y="86"  id="b10" label="`" width="30" height="24"/>
             <s:Button x="382" y="86" id="b11" label="=" width="30"  height="24"/>
            <s:Button x="353" y="86"  id="b12"  label="-" width="30" height="24"/>
            <s:Button x="410"  y="86"  id="b13" label="back" width="76" height="24"/>
             <s:Button x="157" y="86"  id="b14" label="4" width="30"  height="24"/>
            <s:Button x="43" y="109" id="b15"  label="tab" width="66" height="24"/>
            <s:Button x="105"  y="109"  id="b16" label="q" width="31" height="24"/>
             <s:Button x="247" y="109"  id="b17" label="y" width="30"  height="24"/>
            <s:Button x="303" y="109"  id="b18"  label="i" width="31" height="24"/>
            <s:Button x="361"  y="110"  id="b19" label="p" width="34" height="23"/>
             <s:Button x="394" y="109"  id="b20" label="[" width="31"  height="24"/>
            <s:Button x="191" y="109"  id="b21"  label="r" width="34" height="24"/>
            <s:Button x="424"  y="109"  id="b22" label="]" width="31" height="24"/>
             <s:Button x="222" y="109"  id="b23" label="t" width="31"  height="24"/>
            <s:Button x="161" y="109"  id="b24"  label="e" width="31" height="24"/>
            <s:Button x="133"  y="109"  id="b25" label="w" width="31" height="24"/>
             <s:Button x="332" y="109"  id="b26" label="o" width="31"  height="24"/>
            <s:Button x="275" y="109"  id="b27"  label="u" width="31" height="24"/>
            <s:Button x="220"  y="133"  id="b28" label="g" width="31" height="24"/>
             <s:Button x="424" y="132"  id="b29" label="enter" width="62"  height="24"/>
            <s:Button x="43" y="132"  id="b30"  label="caps" width="66" height="24"/>
            <s:Button x="275"  y="133"  id="b31" label="j" width="42" height="23"/>
             <s:Button x="314" y="132"  id="b32" label="k" width="31"  height="24"/>
            <s:Button x="133" y="133"  id="b33"  label="s" width="31" height="23"/>
            <s:Button x="161"  y="133"  id="b34" label="d" width="31" height="23"/>
             <s:Button x="250" y="133"  id="b35" label="h" width="31"  height="23"/>
            <s:Button x="105" y="133"  id="b36"  label="a" width="31" height="23"/>
            <s:Button x="191"  y="133"  id="b37" label="f" width="31" height="23"/>
             <s:Button x="342" y="132"  id="b38" label="l" width="31"  height="24"/>
            <s:Button x="152" y="154"  id="b39"  label="x" width="31" height="24"/>
            <s:Button x="353"  y="154"  id="b40" label="." width="31" height="24"/>
             <s:Button x="325" y="154"  id="b41" label="," width="31"  height="24"/>
            <s:Button x="294" y="154"  id="b42"  label="m" width="31" height="24"/>
            <s:Button x="259"  y="154"  id="b43" label="n" width="37" height="24"/>
             <s:Button x="236" y="154"  id="b44" label="b" width="31"  height="24"/>
            <s:Button x="211" y="154"  id="b45"  label="v" width="31" height="24"/>
            <s:Button x="181"  y="154"  id="b46" label="c" width="31" height="24"/>
             <s:Button x="122" y="154"  id="b47" label="z" width="31"  height="24"/>
            <s:Button x="380" y="154"  id="b48"  label="/" width="31" height="24"/>
            <s:Button x="368"  y="132"  id="b49" label=";" width="31" height="24"/>
             <s:Button x="396" y="132"  id="b50" label="'" width="31"  height="24"/>
            <s:Button x="43" y="154"  id="b51"  label="shift" width="82" height="24"/>
            <s:Button  x="407" y="154" id="b52" label="shift" width="79" height="24"/>
             <s:Button x="455" y="109"  id="b53" label="\" width="31"  height="24"/>
        </s:Panel>
        <s:TextInput  x="161" y="27" id="textbox" width="253"/>
    </s:Application>
    regards,
    saran r

    hi,
    how to code for these buttons "control,alt,delete,insert and spacebar".
    can u help me how to program?
    i have attached the mxml code with this,
    virtualkeypad1.mxml
    <?xml version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                   xmlns:s="library://ns.adobe.com/flex/spark"
                   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
                   creationComplete="application1_creationCompleteHandler(event)" viewSourceURL="srcview/index.html">
        <fx:Script>
            <![CDATA[
                import flash.utils.getQualifiedSuperclassName;
                import mx.events.FlexEvent;
                private var inpText:String = 'inp1';
                private var shiftState:Boolean = false;
                private var capsState:Boolean = false;
                protected function keyboard_clickHandler(event:MouseEvent):void
                    this[inpText].text = this[inpText].text+(event.currentTarget as Button).label;
                    if (shiftState == true) shift_clickHandler(null);
                protected function caps_clickHandler(event:MouseEvent):void
                    capsState = !capsState;
                    if (capsState == true)
                        currentState = "SHIFTED" else currentState = "PRIMARY";
                protected function tab_clickHandler(event:MouseEvent):void
                    this[inpText].text = this[inpText].text+"    ";
                protected function shift_clickHandler(event:MouseEvent):void
                    shiftState = !shiftState;
                    if (shiftState == true)
                        currentState = "SHIFTED" else currentState = "PRIMARY";
                protected function enter_clickHandler(event:MouseEvent):void
                    this[inpText].text = this[inpText].text+"\n";
                protected function backspace_clickHandler(event:MouseEvent):void
                    var tmpStr:String = this[inpText].text;
                    this[inpText].text = tmpStr.substr(0,tmpStr.length-1);
                protected function application1_creationCompleteHandler(event:FlexEvent):void
                    inp1.setFocus();               
                protected function focus_enterHandler(event:MouseEvent):void
                    inpText = event.currentTarget.id;
            ]]>
        </fx:Script>
        <s:states>
            <s:State name="PRIMARY"/>
            <s:State name="SHIFTED"/>
        </s:states>
        <fx:Declarations>
            <!-- Place non-visual elements (e.g., services, value objects) here -->
        </fx:Declarations>
        <s:TextInput id="inp1" y="36" width="151" horizontalCenter="0" click="focus_enterHandler(event)" y.PRIMARY="239" horizontalCenter.PRIMARY="42" width.PRIMARY="199" height.PRIMARY="31"/>
        <s:Group id="keyboard" width="661" height="184" horizontalCenter="0" y="300" focusEnabled="false">
            <s:Button x="5" y="5" label="~" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="`"/>
            <s:Button x="49" y="5" label="!" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="1"/>
            <s:Button x="93" y="5" label="@" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="2"/>
            <s:Button x="137" y="5" label="#" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="3"/>
            <s:Button x="181" y="5" label="$" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="4"/>
            <s:Button x="225" y="5" label="%" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="5"/>
            <s:Button x="269" y="5" label="^" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="6"/>
            <s:Button x="313" y="5" label="&amp;" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="7"/>
            <s:Button x="357" y="5" label="*" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="8"/>
            <s:Button x="401" y="5" label="(" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="9"/>
            <s:Button x="445" y="5" label=")" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="0"/>
            <s:Button x="489" y="5" label="_" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="-"/>
            <s:Button x="533" y="5" label="+" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="="/>
            <s:Button x="577" y="5" label="Backspace" height="43" width="80" fontSize="11" fontWeight="bold" click="backspace_clickHandler(event)"/>
            <s:Button x="5" y="48" label="Tab" height="43" width="67" fontSize="12" fontWeight="bold" click="tab_clickHandler(event)"/>
            <s:Button x="72" y="48" label="Q" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="q"/>
            <s:Button x="116" y="48" label="W" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="w"/>
            <s:Button x="160" y="48" label="E" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="e"/>
            <s:Button x="204" y="48" label="R" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="r"/>
            <s:Button x="248" y="48" label="T" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="t"/>
            <s:Button x="292" y="48" label="Y" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="y"/>
            <s:Button x="336" y="48" label="U" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="u"/>
            <s:Button x="380" y="48" label="I" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="i"/>
            <s:Button x="424" y="48" label="O" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="o"/>
            <s:Button x="468" y="48" label="P" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="p"/>
            <s:Button x="512" y="48" label="{" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="["/>
            <s:Button x="556" y="48" label="}" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="]"/>
            <s:Button x="600" y="48" label="|" height="43" width="57" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="\"/>
            <s:Button x="5" y="91" label="CapsLock" height="43" width="80" fontSize="12" fontWeight="bold" click="caps_clickHandler(event)"/>
            <s:Button x="85" y="91" label="A" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="a"/>
            <s:Button x="129" y="91" label="S" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="s"/>
            <s:Button x="173" y="91" label="D" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="d"/>
            <s:Button x="217" y="91" label="F" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="f"/>
            <s:Button x="261" y="91" label="G" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="g"/>
            <s:Button x="305" y="91" label="H" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="h"/>
            <s:Button x="349" y="91" label="J" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="j"/>
            <s:Button x="393" y="91" label="K" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="k"/>
            <s:Button x="437" y="91" label="L" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="l"/>
            <s:Button x="481" y="91" label=":" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY=";"/>
            <s:Button x="525" y="91" label="&quot;" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="'"/>
            <s:Button x="569" y="91" label="Enter" height="43" width="88" fontSize="24" fontWeight="bold" click="enter_clickHandler(event)"/>
            <s:Button x="5" y="134" label="Shift" height="43" width="106" fontSize="24" fontWeight="bold" click="shift_clickHandler(event)"/>
            <s:Button x="111" y="134" label="Z" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="z"/>
            <s:Button x="155" y="134" label="X" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="x"/>
            <s:Button x="199" y="134" label="C" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="c"/>
            <s:Button x="243" y="134" label="V" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="v"/>
            <s:Button x="287" y="134" label="B" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="b"/>
            <s:Button x="331" y="134" label="N" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="n"/>
            <s:Button x="375" y="134" label="M" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="m"/>
            <s:Button x="419" y="134" label="&lt;" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY=","/>
            <s:Button x="463" y="134" label="&gt;" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="."/>
            <s:Button x="507" y="134" label="?" height="43" width="44" fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)" label.PRIMARY="/"/>
            <s:Button x="551" y="134" label="Shift" height="43" width="106" fontSize="24" fontWeight="bold" click="shift_clickHandler(event)"/>
        </s:Group>
    </s:Application>
    thanks in advance,
    saran r

  • How to use virtual keyboard in flex application

    hi..
    i am using flash builder 4,
    how to use virtual keyboard in flex?
    if any one aware of this pls reply me.......
    saran r

    hi,
    how to code for these buttons  "control,alt,delete,insert and spacebar".
    can u help me  how to program?
    i have attached the mxml code with this,
    virtualkeypad1.mxml
    <?xml  version="1.0" encoding="utf-8"?>
    <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
                    xmlns:s="library://ns.adobe.com/flex/spark"
                    xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955"  minHeight="600"
                     creationComplete="application1_creationCompleteHandler(event)"  viewSourceURL="srcview/index.html">
         <fx:Script>
             <![CDATA[
                 import flash.utils.getQualifiedSuperclassName;
                 import mx.events.FlexEvent;
                 private var inpText:String = 'inp1';
                 private var shiftState:Boolean = false;
                 private var capsState:Boolean = false;
                 protected function  keyboard_clickHandler(event:MouseEvent):void
                     this[inpText].text =  this[inpText].text+(event.currentTarget as Button).label;
                     if (shiftState == true) shift_clickHandler(null);
                 protected function caps_clickHandler(event:MouseEvent):void
                     capsState = !capsState;
                     if (capsState == true)
                         currentState = "SHIFTED" else currentState =  "PRIMARY";
                 protected function tab_clickHandler(event:MouseEvent):void
                     this[inpText].text = this[inpText].text+"    ";
                 protected function shift_clickHandler(event:MouseEvent):void
                     shiftState = !shiftState;
                     if (shiftState == true)
                         currentState = "SHIFTED" else currentState =  "PRIMARY";
                 protected function enter_clickHandler(event:MouseEvent):void
                     this[inpText].text = this[inpText].text+"\n";
                 protected function  backspace_clickHandler(event:MouseEvent):void
                     var tmpStr:String = this[inpText].text;
                     this[inpText].text = tmpStr.substr(0,tmpStr.length-1);
                 protected function  application1_creationCompleteHandler(event:FlexEvent):void
                     inp1.setFocus();               
                 protected function focus_enterHandler(event:MouseEvent):void
                     inpText = event.currentTarget.id;
             ]]>
         </fx:Script>
         <s:states>
             <s:State name="PRIMARY"/>
             <s:State name="SHIFTED"/>
         </s:states>
         <fx:Declarations>
             <!-- Place non-visual elements (e.g., services, value  objects) here -->
         </fx:Declarations>
         <s:TextInput id="inp1" y="36" width="151" horizontalCenter="0"  click="focus_enterHandler(event)" y.PRIMARY="239"  horizontalCenter.PRIMARY="42" width.PRIMARY="199"  height.PRIMARY="31"/>
         <s:Group id="keyboard" width="661" height="184"  horizontalCenter="0" y="300" focusEnabled="false">
             <s:Button x="5" y="5" label="~" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="`"/>
             <s:Button x="49" y="5" label="!" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="1"/>
             <s:Button x="93" y="5" label="@" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="2"/>
             <s:Button x="137" y="5" label="#" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="3"/>
             <s:Button x="181" y="5" label="$" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="4"/>
             <s:Button x="225" y="5" label="%" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="5"/>
             <s:Button x="269" y="5" label="^" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="6"/>
             <s:Button x="313" y="5" label="&amp;" height="43"  width="44" fontSize="24" fontWeight="bold"  click="keyboard_clickHandler(event)" label.PRIMARY="7"/>
             <s:Button x="357" y="5" label="*" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="8"/>
             <s:Button x="401" y="5" label="(" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="9"/>
             <s:Button x="445" y="5" label=")" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="0"/>
             <s:Button x="489" y="5" label="_" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="-"/>
             <s:Button x="533" y="5" label="+" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="="/>
             <s:Button x="577" y="5" label="Backspace" height="43"  width="80" fontSize="11" fontWeight="bold"  click="backspace_clickHandler(event)"/>
             <s:Button x="5" y="48" label="Tab" height="43" width="67"  fontSize="12" fontWeight="bold" click="tab_clickHandler(event)"/>
             <s:Button x="72" y="48" label="Q" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="q"/>
             <s:Button x="116" y="48" label="W" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="w"/>
             <s:Button x="160" y="48" label="E" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="e"/>
             <s:Button x="204" y="48" label="R" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="r"/>
             <s:Button x="248" y="48" label="T" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="t"/>
             <s:Button x="292" y="48" label="Y" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="y"/>
             <s:Button x="336" y="48" label="U" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="u"/>
             <s:Button x="380" y="48" label="I" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="i"/>
             <s:Button x="424" y="48" label="O" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="o"/>
             <s:Button x="468" y="48" label="P" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="p"/>
             <s:Button x="512" y="48" label="{" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="["/>
             <s:Button x="556" y="48" label="}" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="]"/>
             <s:Button x="600" y="48" label="|" height="43" width="57"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="\"/>
             <s:Button x="5" y="91" label="CapsLock" height="43"  width="80" fontSize="12" fontWeight="bold"  click="caps_clickHandler(event)"/>
             <s:Button x="85" y="91" label="A" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="a"/>
             <s:Button x="129" y="91" label="S" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="s"/>
             <s:Button x="173" y="91" label="D" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="d"/>
             <s:Button x="217" y="91" label="F" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="f"/>
             <s:Button x="261" y="91" label="G" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="g"/>
             <s:Button x="305" y="91" label="H" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="h"/>
             <s:Button x="349" y="91" label="J" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="j"/>
             <s:Button x="393" y="91" label="K" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="k"/>
             <s:Button x="437" y="91" label="L" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="l"/>
             <s:Button x="481" y="91" label=":" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY=";"/>
             <s:Button x="525" y="91" label="&quot;" height="43"  width="44" fontSize="24" fontWeight="bold"  click="keyboard_clickHandler(event)" label.PRIMARY="'"/>
             <s:Button x="569" y="91" label="Enter" height="43" width="88"  fontSize="24" fontWeight="bold" click="enter_clickHandler(event)"/>
             <s:Button x="5" y="134" label="Shift" height="43" width="106"  fontSize="24" fontWeight="bold" click="shift_clickHandler(event)"/>
             <s:Button x="111" y="134" label="Z" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="z"/>
             <s:Button x="155" y="134" label="X" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="x"/>
             <s:Button x="199" y="134" label="C" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="c"/>
             <s:Button x="243" y="134" label="V" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="v"/>
             <s:Button x="287" y="134" label="B" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="b"/>
             <s:Button x="331" y="134" label="N" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="n"/>
             <s:Button x="375" y="134" label="M" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="m"/>
             <s:Button x="419" y="134" label="&lt;" height="43"  width="44" fontSize="24" fontWeight="bold"  click="keyboard_clickHandler(event)" label.PRIMARY=","/>
             <s:Button x="463" y="134" label="&gt;" height="43"  width="44" fontSize="24" fontWeight="bold"  click="keyboard_clickHandler(event)" label.PRIMARY="."/>
             <s:Button x="507" y="134" label="?" height="43" width="44"  fontSize="24" fontWeight="bold" click="keyboard_clickHandler(event)"  label.PRIMARY="/"/>
             <s:Button x="551" y="134" label="Shift" height="43"  width="106" fontSize="24" fontWeight="bold"  click="shift_clickHandler(event)"/>
         </s:Group>
    </s:Application>
    thanks in  advance,
    saran r

  • VIRTUAL KEYBOARD NOT SHOWN

    anybody who can help me about my problem with torch 9800? my virtual keyboard does not appear.....

    Try a battery pull. Remove your battery while your phone is powered on then replace it.
    Let us know if that helps.
    - If my response has helped you, please click "Options" beside my post and mark it as solved. Clicking the "thumbs up" icon near the bottom of my response would also be appreciated.

  • Feature Request: user-defined virtual keyboard popup for text fields

    It would be convenient to be able to define (either declaratively in XML or programmatically) custom virtual keyboards (codepoints + font-name)  that could be popped up from the context-menu on any text field.
    The string of characters produced on the virtual keyboard should be inserted into the associated text field at the .selectionBeginIndex location, or replace any selected text, if applicable.
    Adobe could also supply  predefined keyboards, but the important thing is that the programmer have the ability to define custom layouts and choose which codepoints the virtual keyboard contains, and that it be launchablefrom a custom contextmenuitem or that it be very simple and easy to tell Adobe which layout should be launched shoulda default contextmenuitem be dedicated to this purpose.
    Slick if it could support programmer-controlled transparency, so what lies beneath it could be revealed if the programmer desired.

    User-controlled transparency (with a slider) would also be a nice feature, though the programmer should be able to hide/show the slider widget.

  • The iPhone Virtual Keyboard Frustrations

    I am growing frustrated with my iPhone virtual keyboard. Switching to a non-physical keyboard back in 2007 was a big step for me but I ended adapting to it pretty fast and actually found myself to be comfortable with it very fast. I, however, am starting to reconsider this as there are more and more viable options to the iPhone becoming available (think: Android!). I use 3 different languages and hence 3 different international keyboards on my iPhone on a daily basis and I must say that things are getting messier and messier. Although I have gone through the trouble of resetting my custom dictionaries many times, it seems that my French keyboard cannot spell "après" properly, it keeps auto-correcting it to "Apres" every time I type it. I tried many "tricks" but none solved this problem. I was even able to replicate this issue on other iPhones using a multiple international keyboard setup. In addition, I must say that the process of switching from one language to another is cumbersome to say the least. I'm really getting tired of typing something in English only to realize that I was using the Portuguese keyboard and that my first 5 words have already been auto-corrected to Portuguese.
    Apple really needs to solve this problem. What they should do, in my opinion, is allow the iPhone to use multiple languages at the same time and try and figure out which one the user is using after the first or four or five words they have typed.

    I find it really easy to switch between languages. All it takes is one or two tabs on the globe icon and you're set. I don't think it's a big issue. Also, you can easily tell what language you are currently on by the keyboard layout and the spelling on the space bar.
    I've tried Android phones with physical keyboards and I've found typing to be a hassle on them. iPhone is the easiest mobile phone to type on. Just my personal opinion.

  • Virtual Keyboard problems

    My IPad Air virtual screen won´t work, is "fixed" to the screen and cannot dimish it as normally from the keyboard icon. Been switching on and off the bluetooth but continues with the sasme problem.
    How to resolve?

    Have you tried resetting your iPad?
    Reset: Press the Home and On/Off buttons at the same time and hold them until the Apple logo appears (about 10-15 seconds).
    No data will be lost.

  • After 10.8.5 bluetooth hardware disapeared and sound control on keyboard stopped working

    after 10.8.5, bluetooth hardware disapeared from system info. Sound controls on keyboard stopped working.
    all works fine in safe mode. i have already zapped the PRAM, applied the combo update and deleted the bluetooth prefs with same results.
    Mike

    Please read this whole message before doing anything.
    I've tested these instructions only with the Safari web browser. If you use another browser, they may not work as described.
    This procedure is a diagnostic test. It won’t solve your problem. Don’t be disappointed when you find that nothing has changed after you complete it.
    Third-party system modifications are a common cause of usability problems. By a “system modification,” I mean software that affects the operation of other software — potentially for the worse. The following procedure will help identify which such modifications you've installed. Don’t be alarmed by the complexity of these instructions — they’re easy to carry out and won’t change anything on your Mac. 
    These steps are to be taken while booted in “normal” mode, not in safe mode. If you’re now running in safe mode, reboot as usual before continuing. 
    Below are instructions to enter some UNIX shell commands. The commands are harmless, but they must be entered exactly as given in order to work. If you have doubts about the safety of the procedure suggested here, search this site for other discussions in which it’s been followed without any report of ill effects. 
    Some of the commands will line-wrap or scroll in your browser, but each one is really just a single line, all of which must be selected. You can accomplish this easily by triple-clicking anywhere in the line. The whole line will highlight, and you can then copy it. The headings “Step 1” and so on are not part of the commands. 
    Note: If you have more than one user account, Step 2 must be taken as an administrator. Ordinarily that would be the user created automatically when you booted the system for the first time. The other steps should be taken as the user who has the problem, if different. Most personal Macs have only one user, and in that case this paragraph doesn’t apply. 
    Launch the Terminal application in any of the following ways: 
    ☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.) 
    ☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens. 
    ☞ Open LaunchPad. Click Utilities, then Terminal in the icon grid. 
    When you launch Terminal, a text window will open with a line already in it, ending either in a dollar sign (“$”) or a percent sign (“%”). If you get the percent sign, enter “sh” and press return. You should then get a new line ending in a dollar sign. 
    Step 1 
    Triple-click the line of text below on this page to select it:
    kextstat -kl | awk '!/com\.apple/{printf "%s %s\n", $6, $7}' | open -ef 
    Copy the selected text to the Clipboard by pressing the key combination command-C. Then click anywhere in the Terminal window and paste (command-V). A TextEdit window will open with the output of the command. If the command produced no output, the window will be empty. Post the contents of the TextEdit window (not the Terminal window), if any — the text, please, not a screenshot. You can then close the TextEdit window. The title of the window doesn't matter, and you don't need to post that. No typing is involved in this step.
    Step 2 
    Repeat with this line:
    { sudo launchctl list | sed 1d | awk '!/0x|com\.(apple|openssh|vix\.cron)|org\.(amav|apac|cups|isc|ntp|postf|x)/{print $3}'; echo; sudo defaults read com.apple.loginwindow LoginHook; echo; sudo crontab -l; } 2> /dev/null | open -ef 
    This time you'll be prompted for your login password, which you do have to type. Nothing will be displayed when you type it. Type it carefully and then press return. You may get a one-time warning to be careful. Heed that warning, but don't post it. If you see a message that your username "is not in the sudoers file," then you're not logged in as an administrator. 
    Note: If you don’t have a login password, you’ll need to set one before taking this step. If that’s not possible, skip to the next step. 
    Step 3
    { launchctl list | sed 1d | awk '!/0x|com\.apple|org\.(x|openbsd)/{print $3}'; echo; crontab -l 2> /dev/null; } | open -ef 
    Step 4
    ls -A /e*/{cr,la,mach}* {,/}Lib*/{Ad,Compon,Ex,Fram,In,Keyb,La,Mail/Bu,P*P,Priv,Qu,Scripti,Servi,Spo,Sta}* L*/Fonts .la* 2> /dev/null | open -ef  
    Important: If you formerly synchronized with a MobileMe account, your me.com email address may appear in the output of the above command. If so, anonymize it before posting. 
    Step 5
    osascript -e 'tell application "System Events" to get name of login items' | open -ef 
    Remember, steps 1-5 are all copy-and-paste — no typing, except your password. Also remember to post the output. 
    You can then quit Terminal.

Maybe you are looking for