📄 inputunit.pas
字号:
unit InputUnit;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, StdCtrls,imm, Menus;
type
TInputForm = class(TForm)
ComboBox1: TComboBox;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
procedure FormShow(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure OpenIme(imename:string);
procedure closeime;
procedure N1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
InputForm: TInputForm;
implementation
{$R *.DFM}
procedure TInputForm.FormShow(Sender: TObject);
var i:integer;
begin
combobox1.Items.Clear;
for i:=0 to screen.Imes.Count-1 do
begin
combobox1.Items.Add(screen.imes.strings[i]);
end;
end;
procedure Tinputform.OpenIme(imename:string);
var
I:integer;
myhkl:hkl;
begin
if ImeName<>'' then
begin
if Screen.Imes.Count<>0 then
begin
I:=screen.Imes.indexof(imename);
If I>=0 then
myhkl:=hkl(screen.Imes.objects[i]);
activatekeyboardlayout(myhkl,KLF_ACTIVATE);//设置相应的输入法
end;
end;
end;
procedure Tinputform.closeime;
var
myhkl:hkl;
begin
myhkl:=GetKeyBoardLayOut(0);
if ImmIsIME(myhkl) then
//判断是否在中文状态,若是则关闭它
immsimulateHotkey(handle,IME_CHotKey_IME_NonIME_Toggle);
end;
procedure TInputForm.ComboBox1Change(Sender: TObject);
begin
OpenIme(ComboBox1.Text);
end;
procedure TInputForm.SpeedButton3Click(Sender: TObject);
begin
if speedbutton3.Caption='打开' then
begin
OpenIme(ComboBox1.Text);
speedbutton3.Caption:='隐藏'
end
else
if speedbutton3.Caption='隐藏' then
begin
CloseIme;
speedbutton3.Caption:='打开'
end;
end;
procedure TInputForm.SpeedButton1Click(Sender: TObject);
begin
immsimulateHotkey(handle,IME_CHotKey_shape_Toggle);//切换半角和全角模式
end;
procedure TInputForm.SpeedButton2Click(Sender: TObject);
begin
immsimulateHotkey(handle,IME_CHotKey_symbol_Toggle);//切换中文标点模式和英文标点模式
end;
procedure TInputForm.N1Click(Sender: TObject);
begin
HIDE;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -