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

📄 setup.pas

📁 电子小说阅读器v2.68可用于阅读pdf.html等各种形式的文档
💻 PAS
📖 第 1 页 / 共 2 页
字号:

	//初始化系统设置
	CheckBoxChangeItem.Checked := g_boolChangeItem;
	CheckBoxOpenCloseFile.Checked := g_boolOpenCloseFile;
	CheckBoxClearLabel.Checked := g_boolClearLabel;
	CheckBoxClearNewItem.Checked := g_boolClearNewItem;
	CheckBoxSimpleItem.Checked := g_boolSimpleItem;

	if g_boolAutoGB then CheckBoxAutoGB.Tag := 1 else CheckBoxAutoGB.Tag := 0; CheckBoxAutoGBClick(Self);
	CheckBoxYeView.Checked := g_boolYeView;
	BtnChangeYeFont.Enabled := g_boolYeView;
	EditMaxTextRead.Value := g_nMaxFileRead;

	DlgYeFont.Font.Assign(g_YeFont);
	DlgPageFont.Font.Assign(g_PageFont);

	BtnCancelClick(Self);
end;

procedure TFormSetup.CheckBoxMoveClick(Sender: TObject);
var s : string;
begin
	CheckBoxPageMove.Enabled := CheckBoxMove.Checked;
	if not CheckBoxPageMove.Enabled then
		CheckBoxPageMove.Checked := False;

	EditAutoVal.Enabled := CheckBoxAutoPagemove.Checked;
	if EditAutoVal.Enabled then
		EditAutoVal.Color := clWindow
	else
		EditAutoVal.Color := clBtnFace;

	BtnChangeUnderLineColor.Enabled := CheckBoxUnderLine.Checked;
	BtnChangeYeFont.Enabled := CheckBoxYeView.Checked;

	if (Sender is TCheckBox) then
	begin
		s := TCheckBox(Sender).Name;

		if ((s = 'CheckBoxBIG5') or (s = 'CheckBoxGB')) then
			ChangePageDo(Self);

		if (s = 'CheckBoxYeView') then
			ChangeYe(Self);
	end;
end;

procedure TFormSetup.BtnChangeUnderLineColorClick(Sender: TObject);
begin
	if DlgUnderLineColor.Execute then
	begin
		with ImageUnderLineColor.Canvas do
		begin
			Pen.Color := DlgUnderLineColor.Color;
			Brush.Color := Pen.Color;
			Polygon(FImageArray);
		end;

		BtnChangeUnderLineColor.Glyph := ImageUnderLineColor.Picture.Bitmap;
	end;
end;

procedure TFormSetup.CheckBoxBackImageClick(Sender: TObject);
begin
	BtnChangeBackImage.Enabled := CheckBoxBackImage.Checked;
	BtnChangeLabelImage.Enabled := CheckBoxLabelImage.Checked;
	ChangeImage(Self);
end;

procedure TFormSetup.BtnChangeBackImageClick(Sender: TObject);
begin
	if DlgOpenImage.Execute then
	begin
		case TSpeedButton(Sender).Tag of
			1 : FstrBackImageFilename := DlgOpenImage.Filename;
			2 : FstrLabelImageFilename := DlgOpenImage.Filename;
		end;

		ChangeImage(Self);
	end;
end;

procedure TFormSetup.BtnChangeAlarmClick(Sender: TObject);
begin
	with TFormAlarm.Create(nil) do
	begin
		ShowModal;
		Free;
	end;
end;

procedure TFormSetup.CheckBoxAutoGBClick(Sender: TObject);
begin
	with CheckBoxAutoGb do
	begin
		OnClick := nil;

		Checked := True;
		Tag := 1 - Tag;

		if Tag = 0 then
			Caption := '自动转换为GB码'
		else
			Caption := '自动转换为BIG5码';

		OnClick := CheckBoxAutoGBClick;
	end;

	ChangePageDo(Self);
end;

procedure TFormSetup.BtnChangeYeFontClick(Sender: TObject);
begin
	case TSpeedButton(Sender).Tag of
		1 :  //改变页码字体设置
		begin
			if DlgYeFont.Execute then
				ChangeYe(Self);
		end;

		2 :  //改变页面字体设置
		begin
			if DlgPageFont.Execute then
				ChangePage(Self);
		end;
	end;
end;

procedure TFormSetup.BtnOkClick(Sender: TObject);
var i : integer;
begin
	//调整书本设置
	try
		g_nBookLeft := StrToInt(EditBookLeft.Text);
	except
		PageControl1.ActivePageIndex := 0;
		EditBookLeft.SetFocus;
		EditBookLeft.SelectAll;
		Exit;
	end;

	try
		g_nBookTop := StrToInt(EditBookTop.Text);
	except
		PageControl1.ActivePageIndex := 0;
		EditBookTop.SetFocus;
		EditBookTop.SelectAll;
		Exit;
	end;

	try
		g_nBookWidth := StrToInt(EditBookWidth.Text);
	except
		PageControl1.ActivePageIndex := 0;
		EditBookWidth.SetFocus;
		EditBookWidth.SelectAll;
		Exit;
	end;

	try
		g_nBookHeight := StrToInt(EditBookHeight.Text);
	except
		PageControl1.ActivePageIndex := 0;
		EditBookHeight.SetFocus;
		EditBookHeight.SelectAll;
		Exit;
	end;

	//调整页面设置
	g_boolMove := CheckBoxMove.Checked;
	g_boolResize := CheckBoxResize.Checked;
	g_boolPageMove := CheckBoxPageMove.Checked;
	g_boolPageYe := CheckBoxPageYe.Checked;
	g_boolMax := CheckBoxMax.Checked;
	g_boolSinglePage := CheckBoxSinglePage.Checked;
	g_boolAutoPageMove := CheckBoxAutoPageMove.Checked;

	try
		g_nAutoVal := StrToInt(EditAutoVal.Text);
	except
		PageControl1.ActivePageIndex := 1;
		EditAutoVal.SetFocus;
		EditAutoVal.SelectAll;
		Exit;
	end;

	g_boolBIG5 := CheckBoxBIG5.Checked;
	g_boolGB := CheckBoxGB.Checked;
	g_boolHtml := CheckBoxHtml.Checked;
	g_boolChap := CheckBoxChap.Checked;
	g_boolHangD := CheckBoxHangD.Checked;
	g_boolUnderLine := CheckBoxUnderLine.Checked;
	g_nUnderLineColor := DlgUnderLineColor.Color;

	//调整页码设置
	g_strYe1Be := ComboBoxYe1Be.Text;
	g_strYe1Af := ComboBoxYe1Af.Text;

	for i := 1 to 3 do
		if TRadioButton(FindComponent('RbYe1Loc' + IntToStr(i))).Checked then
			g_strYe1Loc[1] := IntToStr(i)[1];

	for i := 1 to 2 do
		if TRadioButton(FindComponent('RbYe1Loc' + IntToStr(i + 3))).Checked then
			g_strYe1Loc[2] := IntToStr(i)[1];

	g_boolYe1Count := CheckBoxYe1Count.Checked;

	g_strYe2Be := ComboBoxYe2Be.Text;
	g_strYe2Af := ComboBoxYe2Af.Text;

	for i := 1 to 3 do
		if TRadioButton(FindComponent('RbYe2Loc' + IntToStr(i))).Checked then
			g_strYe2Loc[1] := IntToStr(i)[1];

	for i := 1 to 2 do
		if TRadioButton(FindComponent('RbYe2Loc' + IntToStr(i + 3))).Checked then
			g_strYe2Loc[2] := IntToStr(i)[1];

	g_boolYe2Count := CheckBoxYe2Count.Checked;

	//调整编码设置
	g_boolUnMimeCode := RbUnMimeCode.Checked;
	g_boolUnQPCode := RbUnQPCode.Checked;
	g_boolUnHZCode := RbUnHZCode.Checked;

	//调整界面设置
	g_boolBackImage := CheckBoxBackImage.Checked;
	g_strBackImageFilename := FstrBackImageFilename;
	g_boolLabelImage := CheckBoxLabelImage.Checked;
	g_strLabelImageFilename := FstrLabelImageFilename;
	g_boolShowTime := CheckBoxShowTime.Checked;
	g_boolFlat := CheckBoxFlat.Checked;
	g_boolViewCtrl := CheckBoxViewCtrl.Checked;

	//调整系统设置
	g_boolChangeItem := CheckBoxChangeItem.Checked;
	g_boolOpenCloseFile := CheckBoxOpenCloseFile.Checked;
	g_boolClearLabel := CheckBoxClearLabel.Checked;
	g_boolClearNewItem := CheckBoxClearNewItem.Checked;
	g_boolSimpleItem := CheckBoxSimpleItem.Checked;

	g_boolAutoGB := (CheckBoxAutoGB.Tag = 0);
	g_boolYeView := CheckBoxYeView.Checked;
	g_nMaxFileRead := EditMaxTextRead.Value;

	g_YeFont.Assign(DlgYeFont.Font);
	g_PageFont.Assign(DlgPageFont.Font);

	ModalResult := mrOk;
end;

procedure TFormSetup.BtnCancelClick(Sender: TObject);
begin
    //取消设置
	g_boolChangeMax := False;     //写标志:没有改变最大化显示设置
	g_boolChangeWindow := False;  //写标志:没有改变窗口设置
	g_boolChangePage := False;    //写标志:没有改变页面设置
	g_boolChangeYe := False;      //写标志:没有改变页码设置
	g_boolChangePageDo := False;  //写标志:没有改变处理设置
	g_boolChangeImage := False;   //写标志:没有改变背景设置
end;

procedure TFormSetup.BtnDefaultClick(Sender: TObject);
begin
	if not Confirm('恢复为默认设置?') then ModalResult := mrNone;
end;

procedure TFormSetup.ChangeMax(Sender: TObject);
begin
	//写标志:改变最大化显示设置
	g_boolChangeMax := True;
end;

procedure TFormSetup.ChangeWindow(Sender: TObject);
begin
	//写标志:改变窗口设置
	g_boolChangeWindow := True;

	//如果是单页显示,则改变背景设置
	if ((Sender is TCheckBox) and (TCheckBox(Sender).Name = 'CheckBoxSinglePage')) then
		ChangeImage(Sender);
end;

procedure TFormSetup.ChangePage(Sender: TObject);
begin
	//写标志:改变页面设置
	g_boolChangePage := True;
end;

procedure TFormSetup.ChangeYe(Sender: TObject);
begin
	//写标志:改变页码设置
	g_boolChangeYe := True;
end;

procedure TFormSetup.ChangePageDo(Sender: TObject);
begin
	//写标志:改变处理设置
	g_boolChangePageDo := True;
end;

procedure TFormSetup.ChangeImage(Sender: TObject);
begin
	//写标志:改变背景设置
	g_boolChangeImage := True;
end;

end.

⌨️ 快捷键说明

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