git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.jvcl@17 7f62d464-2af8-f54e-996c-e91b33f51cbe
593 lines
16 KiB
Plaintext
593 lines
16 KiB
Plaintext
{******************************************************************
|
|
|
|
JEDI-VCL Demo
|
|
|
|
Copyright (C) 2002 Project JEDI
|
|
|
|
Original author:
|
|
|
|
Contributor(s):
|
|
|
|
You may retrieve the latest version of this file at the JEDI-JVCL
|
|
home page, located at http://jvcl.sourceforge.net
|
|
|
|
The contents of this file are used with permission, subject to
|
|
the Mozilla Public License Version 1.1 (the "License"); you may
|
|
not use this file except in compliance with the License. You may
|
|
obtain a copy of the License at
|
|
http://www.mozilla.org/MPL/MPL-1_1Final.html
|
|
|
|
Software distributed under the License is distributed on an
|
|
"AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
|
implied. See the License for the specific language governing
|
|
rights and limitations under the License.
|
|
|
|
******************************************************************}
|
|
|
|
unit Ctrls;
|
|
|
|
interface
|
|
|
|
uses
|
|
SysUtils, Windows, Forms, Messages, Classes, Graphics, Controls,
|
|
JvClock, Dialogs, JvComponent, JvFormPlacement, JvDice, JvExStdCtrls,
|
|
JvTextListBox, JvAnimatedImage, FileCtrl, StdCtrls, JvExExtCtrls,
|
|
JvSplit, ExtCtrls, JvExMask, JvMaskEdit, JvSpin, Spin, JvExControls,
|
|
JvLabel, JvEdit, JvValidateEdit, JvToolEdit, JvBaseEdits, Mask, JvSwitch,
|
|
JvxSlider, JvColorCombo, JvCombobox, ComCtrls, TabNotBk;
|
|
|
|
type
|
|
TControlsForm = class(TForm)
|
|
TabbedNotebook1: TTabbedNotebook;
|
|
GroupBox1: TGroupBox;
|
|
GroupBox2: TGroupBox;
|
|
GroupBox3: TGroupBox;
|
|
GroupBox4: TGroupBox;
|
|
FontComboBox1: TJvFontComboBox;
|
|
Label1: TLabel;
|
|
Label2: TLabel;
|
|
Label3: TLabel;
|
|
CheckBox1: TCheckBox;
|
|
ComboBox1: TComboBox;
|
|
rxSlider1: TJvxSlider ;
|
|
Label4: TLabel;
|
|
Label5: TLabel;
|
|
ComboBox2: TComboBox;
|
|
Label6: TLabel;
|
|
Label7: TLabel;
|
|
CheckBox2: TCheckBox;
|
|
CheckBox3: TCheckBox;
|
|
Label8: TLabel;
|
|
ComboBox3: TComboBox;
|
|
Label9: TLabel;
|
|
rxSwitch1: TJvSwitch ;
|
|
Label10: TLabel;
|
|
ComboBox4: TComboBox;
|
|
Label11: TLabel;
|
|
ComboBox5: TComboBox;
|
|
CheckBox5: TCheckBox;
|
|
GroupBox5: TGroupBox;
|
|
GroupBox6: TGroupBox;
|
|
GroupBox7: TGroupBox;
|
|
GroupBox8: TGroupBox;
|
|
GroupBox9: TGroupBox;
|
|
GroupBox10: TGroupBox;
|
|
ComboEdit1: TJvComboEdit;
|
|
Label13: TLabel;
|
|
Label14: TLabel;
|
|
Label15: TLabel;
|
|
Label16: TLabel;
|
|
Label17: TLabel;
|
|
Label18: TLabel;
|
|
DateEdit1: TJvDateEdit;
|
|
FilenameEdit1: TJvFilenameEdit;
|
|
DirectoryEdit1: TJvDirectoryEdit;
|
|
CurrencyEdit1: TJvValidateEdit;
|
|
Label22: TLabel;
|
|
Edit1: TEdit;
|
|
rxLabel1: TJvLabel ;
|
|
Label23: TLabel;
|
|
Label24: TLabel;
|
|
Label25: TLabel;
|
|
ComboBox6: TComboBox;
|
|
SpinEdit2: TSpinEdit;
|
|
Button1: TButton;
|
|
FontDialog1: TFontDialog;
|
|
GroupBox11: TGroupBox;
|
|
Label26: TLabel;
|
|
Panel1: TPanel;
|
|
Panel2: TPanel;
|
|
Memo1: TMemo;
|
|
rxSplitter1: TJvxSplitter ;
|
|
DriveComboBox1: TDriveComboBox;
|
|
DirectoryListBox1: TDirectoryListBox;
|
|
rxSplitter2: TJvxSplitter ;
|
|
FileListBox1: TFileListBox;
|
|
Label27: TLabel;
|
|
Label28: TLabel;
|
|
GroupBox12: TGroupBox;
|
|
GroupBox13: TGroupBox;
|
|
GroupBox14: TGroupBox;
|
|
GroupBox15: TGroupBox;
|
|
TextListBox1: TJvTextListBox ;
|
|
JvDice: TJvDice;
|
|
Label30: TLabel;
|
|
RunnerImage: TImage;
|
|
Label31: TLabel;
|
|
ComboBox7: TComboBox;
|
|
Button2: TButton;
|
|
Label32: TLabel;
|
|
SpinEdit3: TSpinEdit;
|
|
Label33: TLabel;
|
|
SpinEdit4: TSpinEdit;
|
|
Label34: TLabel;
|
|
Label35: TLabel;
|
|
Label36: TLabel;
|
|
ComboBox8: TComboBox;
|
|
Button3: TButton;
|
|
Label37: TLabel;
|
|
CheckBox6: TCheckBox;
|
|
SpinEdit5: TSpinEdit;
|
|
SpinEdit6: TSpinEdit;
|
|
SpinEdit7: TSpinEdit;
|
|
Label38: TLabel;
|
|
Button4: TButton;
|
|
Label39: TLabel;
|
|
SpinEdit8: TSpinEdit;
|
|
Label40: TLabel;
|
|
SpinEdit9: TSpinEdit;
|
|
Button5: TButton;
|
|
FlagImage: TImage;
|
|
SearchImage: TImage;
|
|
BookImage: TImage;
|
|
SwOff: TImage;
|
|
SwOn: TImage;
|
|
Shape1: TShape;
|
|
GroupBox16: TGroupBox;
|
|
rxSpinEdit1: TJvSpinEdit;
|
|
Label19: TLabel;
|
|
Label20: TLabel;
|
|
Label21: TLabel;
|
|
ComboBox9: TComboBox;
|
|
SpinEdit1: TSpinEdit;
|
|
FormStorage1: TJvFormStorage ;
|
|
ADHThumb: TImage;
|
|
ADHRuler: TImage;
|
|
ADVThumb: TImage;
|
|
ADVRuler: TImage;
|
|
CheckBox4: TCheckBox;
|
|
Button6: TButton;
|
|
OpenDialog: TOpenDialog;
|
|
RxCalcEdit1: TJvCalcEdit ;
|
|
CheckBox7: TCheckBox;
|
|
ColorComboBox1: TJvColorComboBox;
|
|
ColorComboBox2: TJvColorComboBox;
|
|
AnimatedImage1: TJvAnimatedImage;
|
|
Panel3: TPanel;
|
|
JvClock1: TJvClock;
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
procedure FormShow(Sender: TObject);
|
|
procedure ColorComboBox1Change(Sender: TObject);
|
|
procedure CheckBox1Click(Sender: TObject);
|
|
procedure ComboBox1Change(Sender: TObject);
|
|
procedure ComboBox2Change(Sender: TObject);
|
|
procedure rxSlider1Change(Sender: TObject);
|
|
procedure CheckBox2Click(Sender: TObject);
|
|
procedure CheckBox3Click(Sender: TObject);
|
|
procedure ComboBox3Change(Sender: TObject);
|
|
procedure ComboBox4Change(Sender: TObject);
|
|
procedure ComboBox5Change(Sender: TObject);
|
|
procedure rxSwitchOn(Sender: TObject);
|
|
procedure rxSwitch1Off(Sender: TObject);
|
|
procedure CheckBox5Click(Sender: TObject);
|
|
procedure FontComboBox1Change(Sender: TObject);
|
|
procedure ComboEdit1ButtonClick(Sender: TObject);
|
|
procedure Edit1Change(Sender: TObject);
|
|
procedure ColorComboBox2Change(Sender: TObject);
|
|
procedure ComboBox6Change(Sender: TObject);
|
|
procedure SpinEdit2Change(Sender: TObject);
|
|
procedure Button1Click(Sender: TObject);
|
|
procedure FileListBox1Change(Sender: TObject);
|
|
procedure ComboBox7Change(Sender: TObject);
|
|
procedure Button2Click(Sender: TObject);
|
|
procedure SpinEdit3Change(Sender: TObject);
|
|
procedure SpinEdit4Change(Sender: TObject);
|
|
procedure AnimatedImage1StartStop(Sender: TObject);
|
|
procedure ComboBox8Change(Sender: TObject);
|
|
procedure Button3Click(Sender: TObject);
|
|
procedure CheckBox6Click(Sender: TObject);
|
|
procedure SpinEdit5Change(Sender: TObject);
|
|
procedure SpinEdit6Change(Sender: TObject);
|
|
procedure SpinEdit7Change(Sender: TObject);
|
|
procedure JvClock1Alarm(Sender: TObject);
|
|
procedure Button4Click(Sender: TObject);
|
|
procedure SpinEdit8Change(Sender: TObject);
|
|
procedure SpinEdit9Change(Sender: TObject);
|
|
procedure JvDiceChange(Sender: TObject);
|
|
procedure Button5Click(Sender: TObject);
|
|
procedure ComboBox9Change(Sender: TObject);
|
|
procedure SpinEdit1Change(Sender: TObject);
|
|
procedure CheckBox4Click(Sender: TObject);
|
|
procedure Button6Click(Sender: TObject);
|
|
procedure CheckBox7Click(Sender: TObject);
|
|
procedure FormCreate(Sender: TObject);
|
|
private
|
|
{ Private declarations }
|
|
public
|
|
{ Public declarations }
|
|
end;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
|
|
uses
|
|
JvAni, JvJVCLUtils, JvJCLUtils, JvPickDate, Main;
|
|
|
|
procedure TControlsForm.FormCreate(Sender: TObject);
|
|
begin
|
|
{$IFDEF WIN32}
|
|
if NewStyleControls then DirectoryEdit1.DialogKind := dkWin32;
|
|
{$ENDIF}
|
|
|
|
end;
|
|
|
|
procedure TControlsForm.FormClose(Sender: TObject;
|
|
var Action: TCloseAction);
|
|
begin
|
|
Action := caFree;
|
|
end;
|
|
|
|
procedure TControlsForm.FormShow(Sender: TObject);
|
|
begin
|
|
FontComboBox1.FontName := 'Ms Sans Serif';
|
|
ComboBox1.ItemIndex := 0;
|
|
ComboBox2.ItemIndex := 0;
|
|
ComboBox3.ItemIndex := 0;
|
|
ComboBox4.ItemIndex := 0;
|
|
ComboBox5.ItemIndex := 0;
|
|
ComboBox6.ItemIndex := 0;
|
|
ComboBox7.ItemIndex := 0;
|
|
ComboBox7Change(ComboBox7);
|
|
ComboBox8.ItemIndex := 1;
|
|
ComboBox9.ItemIndex := 0;
|
|
end;
|
|
|
|
procedure TControlsForm.ColorComboBox1Change(Sender: TObject);
|
|
begin
|
|
Shape1.Brush.Color := ColorComboBox1.ColorValue;
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox1Click(Sender: TObject);
|
|
begin
|
|
if CheckBox1.Checked then
|
|
FontComboBox1.Options := FontComboBox1.Options + [foTrueTypeOnly]
|
|
else
|
|
FontComboBox1.Options := FontComboBox1.Options - [foTrueTypeOnly]
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox1Change(Sender: TObject);
|
|
begin
|
|
FontComboBox1.Device := TFontDialogDevice(ComboBox1.ItemIndex);
|
|
if FontComboBox1.ItemIndex < 0 then
|
|
FontComboBox1.ItemIndex := 0;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox2Change(Sender: TObject);
|
|
begin
|
|
with rxSlider1 do
|
|
Orientation := TSliderOrientation(ComboBox2.ItemIndex);
|
|
end;
|
|
|
|
procedure TControlsForm.rxSlider1Change(Sender: TObject);
|
|
begin
|
|
Label6.Caption := Format('Value: %d', [rxSlider1.Value]);
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox2Click(Sender: TObject);
|
|
begin
|
|
if CheckBox2.Checked then
|
|
rxSlider1.Options := rxSlider1.Options + [soSmooth]
|
|
else
|
|
rxSlider1.Options := rxSlider1.Options - [soSmooth];
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox3Click(Sender: TObject);
|
|
begin
|
|
if CheckBox3.Checked then
|
|
rxSlider1.Options := rxSlider1.Options + [soShowPoints]
|
|
else
|
|
rxSlider1.Options := rxSlider1.Options - [soShowPoints];
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox3Change(Sender: TObject);
|
|
begin
|
|
with rxSlider1 do
|
|
case ComboBox3.ItemIndex of
|
|
0:
|
|
begin
|
|
NumThumbStates := 2;
|
|
ImageHRuler := nil;
|
|
ImageHThumb := nil;
|
|
ImageVRuler := nil;
|
|
ImageVThumb := nil;
|
|
end;
|
|
1:
|
|
begin
|
|
NumThumbStates := 1;
|
|
ImageHRuler := ADHRuler.Picture.Bitmap;
|
|
ImageHThumb := ADHThumb.Picture.Bitmap;
|
|
ImageVRuler := ADVRuler.Picture.Bitmap;
|
|
ImageVThumb := ADVThumb.Picture.Bitmap;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox4Change(Sender: TObject);
|
|
begin
|
|
rxSwitch1.TextPosition := TTextPos(ComboBox4.ItemIndex);
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox5Change(Sender: TObject);
|
|
begin
|
|
with rxSwitch1 do
|
|
case ComboBox5.ItemIndex of
|
|
0:
|
|
begin
|
|
GlyphOn := nil;
|
|
GlyphOff := nil;
|
|
end;
|
|
1:
|
|
begin
|
|
GlyphOn := SwOn.Picture.Bitmap;
|
|
GlyphOff := SwOff.Picture.Bitmap;
|
|
end;
|
|
end;
|
|
|
|
end;
|
|
|
|
procedure TControlsForm.rxSwitchOn(Sender: TObject);
|
|
begin
|
|
rxSwitch1.Caption := 'On';
|
|
end;
|
|
|
|
procedure TControlsForm.rxSwitch1Off(Sender: TObject);
|
|
begin
|
|
rxSwitch1.Caption := 'Off';
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox5Click(Sender: TObject);
|
|
begin
|
|
if CheckBox5.Checked then
|
|
rxSwitch1.BorderStyle := bsSingle
|
|
else
|
|
rxSwitch1.BorderStyle := bsNone;
|
|
end;
|
|
|
|
procedure TControlsForm.FontComboBox1Change(Sender: TObject);
|
|
begin
|
|
Label2.Font.Name := FontComboBox1.FontName;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboEdit1ButtonClick(Sender: TObject);
|
|
var
|
|
ADate: TDateTime;
|
|
begin
|
|
ADate := StrToDateDef(ComboEdit1.Text, Now);
|
|
if PopupDate(ADate, ComboEdit1) then
|
|
ComboEdit1.Text := DateToStr(ADate);
|
|
if ComboEdit1.CanFocus then ComboEdit1.SetFocus;
|
|
end;
|
|
|
|
procedure TControlsForm.Edit1Change(Sender: TObject);
|
|
begin
|
|
// CurrencyEdit1.DisplayFormat := Edit1.Text;
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox7Click(Sender: TObject);
|
|
begin
|
|
// CurrencyEdit1.FormatOnEditing := CheckBox7.Checked;
|
|
end;
|
|
|
|
procedure TControlsForm.ColorComboBox2Change(Sender: TObject);
|
|
begin
|
|
rxLabel1.ShadowColor := ColorComboBox2.ColorValue;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox6Change(Sender: TObject);
|
|
begin
|
|
rxLabel1.ShadowPos := TShadowPosition(ComboBox6.ItemIndex);
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit2Change(Sender: TObject);
|
|
begin
|
|
rxLabel1.ShadowSize := SpinEdit2.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.Button1Click(Sender: TObject);
|
|
begin
|
|
FontDialog1.Font := rxLabel1.Font;
|
|
if FontDialog1.Execute then
|
|
rxLabel1.Font := FontDialog1.Font;
|
|
end;
|
|
|
|
procedure TControlsForm.FileListBox1Change(Sender: TObject);
|
|
begin
|
|
try
|
|
Memo1.Lines.LoadFromFile(FileListBox1.FileName);
|
|
except
|
|
Memo1.Clear;
|
|
end;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox7Change(Sender: TObject);
|
|
begin
|
|
case ComboBox7.ItemIndex of
|
|
0:
|
|
begin
|
|
AnimatedImage1.Glyph := RunnerImage.Picture.Bitmap;
|
|
AnimatedImage1.GlyphNum := 12;
|
|
end;
|
|
1:
|
|
begin
|
|
AnimatedImage1.Glyph := FlagImage.Picture.Bitmap;
|
|
AnimatedImage1.GlyphNum := 4;
|
|
end;
|
|
2:
|
|
begin
|
|
AnimatedImage1.Glyph := SearchImage.Picture.Bitmap;
|
|
AnimatedImage1.GlyphNum := 12;
|
|
end;
|
|
3:
|
|
begin
|
|
AnimatedImage1.Glyph := BookImage.Picture.Bitmap;
|
|
AnimatedImage1.GlyphNum := 5;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TControlsForm.Button2Click(Sender: TObject);
|
|
begin
|
|
AnimatedImage1.Active := not AnimatedImage1.Active;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit3Change(Sender: TObject);
|
|
begin
|
|
AnimatedImage1.Interval := SpinEdit3.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit4Change(Sender: TObject);
|
|
begin
|
|
AnimatedImage1.GlyphNum := SpinEdit4.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.AnimatedImage1StartStop(Sender: TObject);
|
|
begin
|
|
SpinEdit4.Value := AnimatedImage1.GlyphNum;
|
|
SpinEdit3.Value := AnimatedImage1.Interval;
|
|
if AnimatedImage1.Active then
|
|
Button2.Caption := 'Stop'
|
|
else
|
|
Button2.Caption := 'Start';
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox8Change(Sender: TObject);
|
|
begin
|
|
JvClock1.ShowMode := TShowClock(ComboBox8.ItemIndex);
|
|
end;
|
|
|
|
procedure TControlsForm.Button3Click(Sender: TObject);
|
|
begin
|
|
FontDialog1.Font := JvClock1.Font;
|
|
if FontDialog1.Execute then
|
|
JvClock1.Font := FontDialog1.Font;
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox6Click(Sender: TObject);
|
|
begin
|
|
JvClock1.AlarmEnabled := CheckBox6.Checked;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit5Change(Sender: TObject);
|
|
begin
|
|
JvClock1.AlarmHour := SpinEdit5.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit6Change(Sender: TObject);
|
|
begin
|
|
JvClock1.AlarmMinute := SpinEdit6.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit7Change(Sender: TObject);
|
|
begin
|
|
JvClock1.AlarmSecond := SpinEdit7.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.JvClock1Alarm(Sender: TObject);
|
|
begin
|
|
MessageDlg('Alarm!', mtInformation, [mbOk], 0);
|
|
end;
|
|
|
|
procedure TControlsForm.Button4Click(Sender: TObject);
|
|
begin
|
|
JvDice.Rotate := not JvDice.Rotate;
|
|
if JvDice.Rotate then
|
|
Button4.Caption := 'Stop'
|
|
else
|
|
Button4.Caption := 'Start';
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit8Change(Sender: TObject);
|
|
begin
|
|
JvDice.Interval := SpinEdit8.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit9Change(Sender: TObject);
|
|
begin
|
|
JvDice.Value := SpinEdit9.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.JvDiceChange(Sender: TObject);
|
|
begin
|
|
SpinEdit9.Value := JvDice.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.Button5Click(Sender: TObject);
|
|
begin
|
|
with TextListBox1.Items do begin
|
|
if Count = 3 then begin
|
|
Insert(2, 'Very Long Item Very Long Item Very Long Item');
|
|
Button5.Caption := 'Back';
|
|
end
|
|
else begin
|
|
Delete(2);
|
|
Button5.Caption := 'Show';
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
procedure TControlsForm.ComboBox9Change(Sender: TObject);
|
|
begin
|
|
rxSpinEdit1.ValueType := TValueType(ComboBox9.ItemIndex);
|
|
end;
|
|
|
|
procedure TControlsForm.SpinEdit1Change(Sender: TObject);
|
|
begin
|
|
rxSpinEdit1.Increment := SpinEdit1.Value;
|
|
end;
|
|
|
|
procedure TControlsForm.CheckBox4Click(Sender: TObject);
|
|
begin
|
|
if CheckBox4.Checked then
|
|
ColorComboBox1.Options := ColorComboBox1.Options + [coText]
|
|
else
|
|
ColorComboBox1.Options := ColorComboBox1.Options - [coText];
|
|
end;
|
|
|
|
procedure TControlsForm.Button6Click(Sender: TObject);
|
|
var
|
|
Image: TJvAni;
|
|
begin
|
|
if OpenDialog.Execute then begin
|
|
OpenDialog.InitialDir := ExtractFilePath(OpenDialog.FileName);
|
|
Image := TJvAni.Create;
|
|
try
|
|
AnimatedImage1.Active := False;
|
|
Image.LoadFromFile(OpenDialog.FileName);
|
|
Image.AssignToBitmap(AnimatedImage1.Glyph, clFuchsia, True,
|
|
AnimatedImage1.Orientation = goVertical);
|
|
ComboBox7.ItemIndex := -1;
|
|
AnimatedImage1.Interval := Image.Header.dwJIFRate div 4;
|
|
SpinEdit3.Value := AnimatedImage1.Interval;
|
|
AnimatedImage1.TransparentColor := clFuchsia;
|
|
AnimatedImage1.Active := True;
|
|
finally
|
|
Image.Free;
|
|
end;
|
|
end;
|
|
end;
|
|
|
|
initialization
|
|
RegisterClasses([TBevel]);
|
|
end.
|