⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jvqinterpreter_stdctrls.pas

📁 East make Tray Icon in delphi
💻 PAS
📖 第 1 页 / 共 2 页
字号:
begin
  TButton(Args.Obj).Click;
end;

{ TCustomCheckBox }

{ constructor Create(AOwner: TComponent) }

procedure TCustomCheckBox_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCustomCheckBox.Create(V2O(Args.Values[0]) as TComponent));
end;

{ TCheckBox }

{ constructor Create(AOwner: TComponent) }

procedure TCheckBox_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCheckBox.Create(V2O(Args.Values[0]) as TComponent));
end;

{ TRadioButton }

{ constructor Create(AOwner: TComponent) }

procedure TRadioButton_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TRadioButton.Create(V2O(Args.Values[0]) as TComponent));
end;

{ TCustomListBox }

{ constructor Create(AOwner: TComponent) }

procedure TCustomListBox_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCustomListBox.Create(V2O(Args.Values[0]) as TComponent));
end;

{ procedure Clear; }

procedure TCustomListBox_Clear(var Value: Variant; Args: TJvInterpreterArgs);
begin
  TCustomListBox(Args.Obj).Clear;
end;

{ function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer; }

procedure TCustomListBox_ItemAtPos(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := TCustomListBox(Args.Obj).ItemAtPos(Var2Point(Args.Values[0]), Args.Values[1]);
end;

{ function ItemRect(Index: Integer): TRect; }

procedure TCustomListBox_ItemRect(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := Rect2Var(TCustomListBox(Args.Obj).ItemRect(Args.Values[0]));
end;

{ property Read Canvas: TCanvas }

procedure TCustomListBox_Read_Canvas(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCustomListBox(Args.Obj).Canvas);
end;

{ property Read Items: TStrings }

procedure TCustomListBox_Read_Items(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCustomListBox(Args.Obj).Items);
end;

{ property Write Items(Value: TStrings) }

procedure TCustomListBox_Write_Items(const Value: Variant; Args: TJvInterpreterArgs);
begin
  TCustomListBox(Args.Obj).Items := V2O(Value) as TStrings;
end;

{ property Read ItemIndex: Integer }

procedure TCustomListBox_Read_ItemIndex(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := TCustomListBox(Args.Obj).ItemIndex;
end;

{ property Write ItemIndex(Value: Integer) }

procedure TCustomListBox_Write_ItemIndex(const Value: Variant; Args: TJvInterpreterArgs);
begin
  TCustomListBox(Args.Obj).ItemIndex := Value;
end;

{ property Read SelCount: Integer }

procedure TCustomListBox_Read_SelCount(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := TCustomListBox(Args.Obj).SelCount;
end;

{ property Read Selected[Integer]: Boolean }

procedure TCustomListBox_Read_Selected(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := TCustomListBox(Args.Obj).Selected[Args.Values[0]];
end;

{ property Write Selected[Integer]: Boolean }

procedure TCustomListBox_Write_Selected(const Value: Variant; Args: TJvInterpreterArgs);
begin
  TCustomListBox(Args.Obj).Selected[Args.Values[0]] := Value;
end;

{ property Read TopIndex: Integer }

procedure TCustomListBox_Read_TopIndex(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := TCustomListBox(Args.Obj).TopIndex;
end;

{ property Write TopIndex(Value: Integer) }

procedure TCustomListBox_Write_TopIndex(const Value: Variant; Args: TJvInterpreterArgs);
begin
  TCustomListBox(Args.Obj).TopIndex := Value;
end;

{ TListBox }

{ constructor Create(AOwner: TComponent) }

procedure TListBox_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TListBox.Create(V2O(Args.Values[0]) as TComponent));
end;

{ TScrollBar }

{ constructor Create(AOwner: TComponent) }

procedure TScrollBar_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TScrollBar.Create(V2O(Args.Values[0]) as TComponent));
end;

{ procedure SetParams(APosition, AMin, AMax: Integer); }

procedure TScrollBar_SetParams(var Value: Variant; Args: TJvInterpreterArgs);
begin
  TScrollBar(Args.Obj).SetParams(Args.Values[0], Args.Values[1], Args.Values[2]);
end;



{ TCustomStaticText }

{ constructor Create(AOwner: TComponent) }

procedure TCustomStaticText_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TCustomStaticText.Create(V2O(Args.Values[0]) as TComponent));
end;

{ TStaticText }

{ constructor Create(AOwner: TComponent) }

procedure TStaticText_Create(var Value: Variant; Args: TJvInterpreterArgs);
begin
  Value := O2V(TStaticText.Create(V2O(Args.Values[0]) as TComponent));
end;



type
  TJvInterpreterStdCtrlsEvent = class(TJvInterpreterEvent)
  private
    procedure DrawItemEvent(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
    procedure MeasureItemEvent(Control: TWinControl; Index: Integer; var Height: Integer);
    procedure ScrollEvent(Sender: TObject; ScrollCode: TScrollCode; var ScrollPos: Integer);
  end;

procedure TJvInterpreterStdCtrlsEvent.DrawItemEvent(Control: TWinControl; Index: Integer; Rect: TRect; State:
  TOwnerDrawState);
begin
  CallFunction(nil, [O2V(Control), Index, Rect2Var(Rect), S2V(Word(State))]);
end;

procedure TJvInterpreterStdCtrlsEvent.MeasureItemEvent(Control: TWinControl; Index: Integer; var Height: Integer);
begin
  CallFunction(nil, [O2V(Control), Index, Height]);
  Height := Args.Values[1];
end;

procedure TJvInterpreterStdCtrlsEvent.ScrollEvent(Sender: TObject; ScrollCode: TScrollCode; var ScrollPos: Integer);
begin
  CallFunction(nil, [O2V(Sender), S2V(Byte(ScrollCode)), ScrollPos]);
  ScrollPos := Args.Values[2];
end;

procedure RegisterJvInterpreterAdapter(JvInterpreterAdapter: TJvInterpreterAdapter);
const
  cStdCtrls = 'StdCtrls';
begin
  with JvInterpreterAdapter do
  begin
    { TGroupBox }
    AddClass(cStdCtrls, TGroupBox, 'TGroupBox');
    AddGet(TGroupBox, 'Create', TGroupBox_Create, 1, [varEmpty], varEmpty);
    
    { TTextLayout }
    AddConst(cStdCtrls, 'tlTop', Ord(tlTop));
    AddConst(cStdCtrls, 'tlCenter', Ord(tlCenter));
    AddConst(cStdCtrls, 'tlBottom', Ord(tlBottom));
    
    { TCustomLabel }
    AddClass(cStdCtrls, TCustomLabel, 'TCustomLabel');
    AddGet(TCustomLabel, 'Create', TCustomLabel_Create, 1, [varEmpty], varEmpty);
    AddGet(TCustomLabel, 'Canvas', TCustomLabel_Read_Canvas, 0, [varEmpty], varEmpty);
    { TLabel }
    AddClass(cStdCtrls, TLabel, 'TLabel');
    AddGet(TLabel, 'Create', TLabel_Create, 1, [varEmpty], varEmpty);
    { TEditCharCase }
    AddConst(cStdCtrls, 'ecNormal', Ord(ecNormal));
    AddConst(cStdCtrls, 'ecUpperCase', Ord(ecUpperCase));
    AddConst(cStdCtrls, 'ecLowerCase', Ord(ecLowerCase));
    { TCustomEdit }
    AddClass(cStdCtrls, TCustomEdit, 'TCustomEdit');
    AddGet(TCustomEdit, 'Create', TCustomEdit_Create, 1, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'Clear', TCustomEdit_Clear, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'ClearSelection', TCustomEdit_ClearSelection, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'CopyToClipboard', TCustomEdit_CopyToClipboard, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'CutToClipboard', TCustomEdit_CutToClipboard, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'PasteFromClipboard', TCustomEdit_PasteFromClipboard, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'GetSelTextBuf', TCustomEdit_GetSelTextBuf, 2, [varEmpty, varEmpty], varEmpty);
    AddGet(TCustomEdit, 'SelectAll', TCustomEdit_SelectAll, 0, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'SetSelTextBuf', TCustomEdit_SetSelTextBuf, 1, [varEmpty], varEmpty);
    AddGet(TCustomEdit, 'Modified', TCustomEdit_Read_Modified, 0, [varEmpty], varEmpty);
    AddSet(TCustomEdit, 'Modified', TCustomEdit_Write_Modified, 0, [varEmpty]);
    AddGet(TCustomEdit, 'SelLength', TCustomEdit_Read_SelLength, 0, [varEmpty], varEmpty);
    AddSet(TCustomEdit, 'SelLength', TCustomEdit_Write_SelLength, 0, [varEmpty]);
    AddGet(TCustomEdit, 'SelStart', TCustomEdit_Read_SelStart, 0, [varEmpty], varEmpty);
    AddSet(TCustomEdit, 'SelStart', TCustomEdit_Write_SelStart, 0, [varEmpty]);
    AddGet(TCustomEdit, 'SelText', TCustomEdit_Read_SelText, 0, [varEmpty], varEmpty);
    AddSet(TCustomEdit, 'SelText', TCustomEdit_Write_SelText, 0, [varEmpty]);
    { TEdit }
    AddClass(cStdCtrls, TEdit, 'TEdit');
    AddGet(TEdit, 'Create', TEdit_Create, 1, [varEmpty], varEmpty);
    { TScrollStyle }
    AddConst(cStdCtrls, 'ssNone', Ord(ssNone));
    AddConst(cStdCtrls, 'ssHorizontal', Ord(ssHorizontal));
    AddConst(cStdCtrls, 'ssVertical', Ord(ssVertical));
    AddConst(cStdCtrls, 'ssBoth', Ord(ssBoth));
    { TCustomMemo }
    AddClass(cStdCtrls, TCustomMemo, 'TCustomMemo');
    AddGet(TCustomMemo, 'Create', TCustomMemo_Create, 1, [varEmpty], varEmpty);
    AddGet(TCustomMemo, 'Lines', TCustomMemo_Read_Lines, 0, [varEmpty], varEmpty);
    AddSet(TCustomMemo, 'Lines', TCustomMemo_Write_Lines, 0, [varEmpty]);
    { TMemo }
    AddClass(cStdCtrls, TMemo, 'TMemo');
    AddGet(TMemo, 'Create', TMemo_Create, 1, [varEmpty], varEmpty);
    { TComboBoxStyle }
    AddConst(cStdCtrls, 'csDropDown', Ord(csDropDown));
    AddConst(cStdCtrls, 'csSimple', Ord(csSimple));
    AddConst(cStdCtrls, 'csDropDownList', Ord(csDropDownList));
    AddConst(cStdCtrls, 'csOwnerDrawFixed', Ord(csOwnerDrawFixed));
    AddConst(cStdCtrls, 'csOwnerDrawVariable', Ord(csOwnerDrawVariable));
    { TOwnerDrawState }
    AddConst(cStdCtrls, 'odSelected', Ord(odSelected));
    AddConst(cStdCtrls, 'odGrayed', Ord(odGrayed));
    AddConst(cStdCtrls, 'odDisabled', Ord(odDisabled));
    AddConst(cStdCtrls, 'odChecked', Ord(odChecked));
    AddConst(cStdCtrls, 'odFocused', Ord(odFocused));
    { TCustomComboBox }
    AddClass(cStdCtrls, TCustomComboBox, 'TCustomComboBox');
    AddGet(TCustomComboBox, 'Create', TCustomComboBox_Create, 1, [varEmpty], varEmpty);
    AddGet(TCustomComboBox, 'Clear', TCustomComboBox_Clear, 0, [varEmpty], varEmpty);
    AddGet(TCustomComboBox, 'SelectAll', TCustomComboBox_SelectAll, 0, [varEmpty], varEmpty);
    AddGet(TCustomComboBox, 'Canvas', TCustomComboBox_Read_Canvas, 0, [varEmpty], varEmpty);
    AddGet(TCustomComboBox, 'DroppedDown', TCustomComboBox_Read_DroppedDown, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'DroppedDown', TCustomComboBox_Write_DroppedDown, 0, [varEmpty]);
    AddGet(TCustomComboBox, 'Items', TCustomComboBox_Read_Items, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'Items', TCustomComboBox_Write_Items, 0, [varEmpty]);
    AddGet(TCustomComboBox, 'ItemIndex', TCustomComboBox_Read_ItemIndex, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'ItemIndex', TCustomComboBox_Write_ItemIndex, 0, [varEmpty]);
    AddGet(TCustomComboBox, 'SelLength', TCustomComboBox_Read_SelLength, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'SelLength', TCustomComboBox_Write_SelLength, 0, [varEmpty]);
    AddGet(TCustomComboBox, 'SelStart', TCustomComboBox_Read_SelStart, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'SelStart', TCustomComboBox_Write_SelStart, 0, [varEmpty]);
    AddGet(TCustomComboBox, 'SelText', TCustomComboBox_Read_SelText, 0, [varEmpty], varEmpty);
    AddSet(TCustomComboBox, 'SelText', TCustomComboBox_Write_SelText, 0, [varEmpty]);
    { TComboBox }
    AddClass(cStdCtrls, TComboBox, 'TComboBox');
    AddGet(TComboBox, 'Create', TComboBox_Create, 1, [varEmpty], varEmpty);
    { TButton }
    AddClass(cStdCtrls, TButton, 'TButton');
    AddGet(TButton, 'Create', TButton_Create, 1, [varEmpty], varEmpty);
    AddGet(TButton, 'Click', TButton_Click, 0, [varEmpty], varEmpty);
    { TCheckBoxState }
    AddConst(cStdCtrls, 'cbUnchecked', Ord(cbUnchecked));
    AddConst(cStdCtrls, 'cbChecked', Ord(cbChecked));
    AddConst(cStdCtrls, 'cbGrayed', Ord(cbGrayed));
    { TCustomCheckBox }
    AddClass(cStdCtrls, TCustomCheckBox, 'TCustomCheckBox');
    AddGet(TCustomCheckBox, 'Create', TCustomCheckBox_Create, 1, [varEmpty], varEmpty);
    { TCheckBox }
    AddClass(cStdCtrls, TCheckBox, 'TCheckBox');
    AddGet(TCheckBox, 'Create', TCheckBox_Create, 1, [varEmpty], varEmpty);
    { TRadioButton }
    AddClass(cStdCtrls, TRadioButton, 'TRadioButton');
    AddGet(TRadioButton, 'Create', TRadioButton_Create, 1, [varEmpty], varEmpty);
    { TListBoxStyle }
    AddConst(cStdCtrls, 'lbStandard', Ord(lbStandard));
    AddConst(cStdCtrls, 'lbOwnerDrawFixed', Ord(lbOwnerDrawFixed));
    AddConst(cStdCtrls, 'lbOwnerDrawVariable', Ord(lbOwnerDrawVariable));
    { TCustomListBox }
    AddClass(cStdCtrls, TCustomListBox, 'TCustomListBox');
    AddGet(TCustomListBox, 'Create', TCustomListBox_Create, 1, [varEmpty], varEmpty);
    AddGet(TCustomListBox, 'Clear', TCustomListBox_Clear, 0, [varEmpty], varEmpty);
    AddGet(TCustomListBox, 'ItemAtPos', TCustomListBox_ItemAtPos, 2, [varEmpty, varEmpty], varEmpty);
    AddGet(TCustomListBox, 'ItemRect', TCustomListBox_ItemRect, 1, [varEmpty], varEmpty);
    AddGet(TCustomListBox, 'Canvas', TCustomListBox_Read_Canvas, 0, [varEmpty], varEmpty);
    AddGet(TCustomListBox, 'Items', TCustomListBox_Read_Items, 0, [varEmpty], varEmpty);
    AddSet(TCustomListBox, 'Items', TCustomListBox_Write_Items, 0, [varEmpty]);
    AddGet(TCustomListBox, 'ItemIndex', TCustomListBox_Read_ItemIndex, 0, [varEmpty], varEmpty);
    AddSet(TCustomListBox, 'ItemIndex', TCustomListBox_Write_ItemIndex, 0, [varEmpty]);
    AddGet(TCustomListBox, 'SelCount', TCustomListBox_Read_SelCount, 0, [varEmpty], varEmpty);
    AddGet(TCustomListBox, 'Selected', TCustomListBox_Read_Selected, 1, [varEmpty], varEmpty);
    AddSet(TCustomListBox, 'Selected', TCustomListBox_Write_Selected, 1, [varNull]);
    AddGet(TCustomListBox, 'TopIndex', TCustomListBox_Read_TopIndex, 0, [varEmpty], varEmpty);
    AddSet(TCustomListBox, 'TopIndex', TCustomListBox_Write_TopIndex, 0, [varEmpty]);
    { TListBox }
    AddClass(cStdCtrls, TListBox, 'TListBox');
    AddGet(TListBox, 'Create', TListBox_Create, 1, [varEmpty], varEmpty);
    { TScrollCode }
    AddConst(cStdCtrls, 'scLineUp', Ord(scLineUp));
    AddConst(cStdCtrls, 'scLineDown', Ord(scLineDown));
    AddConst(cStdCtrls, 'scPageUp', Ord(scPageUp));
    AddConst(cStdCtrls, 'scPageDown', Ord(scPageDown));
    AddConst(cStdCtrls, 'scPosition', Ord(scPosition));
    AddConst(cStdCtrls, 'scTrack', Ord(scTrack));
    AddConst(cStdCtrls, 'scTop', Ord(scTop));
    AddConst(cStdCtrls, 'scBottom', Ord(scBottom));
    AddConst(cStdCtrls, 'scEndScroll', Ord(scEndScroll));
    { TScrollBar }
    AddClass(cStdCtrls, TScrollBar, 'TScrollBar');
    AddGet(TScrollBar, 'Create', TScrollBar_Create, 1, [varEmpty], varEmpty);
    AddGet(TScrollBar, 'SetParams', TScrollBar_SetParams, 3, [varEmpty, varEmpty, varEmpty], varEmpty);
    
    { TStaticBorderStyle }
    AddConst(cStdCtrls, 'sbsNone', Ord(sbsNone));
    AddConst(cStdCtrls, 'sbsSingle', Ord(sbsSingle));
    AddConst(cStdCtrls, 'sbsSunken', Ord(sbsSunken));
    { TCustomStaticText }
    AddClass(cStdCtrls, TCustomStaticText, 'TCustomStaticText');
    AddGet(TCustomStaticText, 'Create', TCustomStaticText_Create, 1, [varEmpty], varEmpty);
    { TStaticText }
    AddClass(cStdCtrls, TStaticText, 'TStaticText');
    AddGet(TStaticText, 'Create', TStaticText_Create, 1, [varEmpty], varEmpty);

    AddHandler(cStdCtrls, 'TDrawItemEvent', TJvInterpreterStdCtrlsEvent, @TJvInterpreterStdCtrlsEvent.DrawItemEvent);
    AddHandler(cStdCtrls, 'TMeasureItemEvent', TJvInterpreterStdCtrlsEvent,
      @TJvInterpreterStdCtrlsEvent.MeasureItemEvent);
    AddHandler(cStdCtrls, 'TScrollEvent', TJvInterpreterStdCtrlsEvent, @TJvInterpreterStdCtrlsEvent.ScrollEvent);
  end;
  RegisterClasses([TGroupBox, TCustomLabel, TLabel, TCustomEdit, TEdit,
    TCustomMemo, TMemo, TCustomComboBox, TComboBox, TButton, TCustomCheckBox,
      TCheckBox, TRadioButton, TCustomListBox, TListBox, TScrollBar
      , TCustomStaticText, TStaticText]);
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -