Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Lazarus, Free Pascal, CodeTyphon
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 21.09.2019, 16:45   #1
Romanza123
 
Регистрация: 21.09.2019
Сообщений: 4
По умолчанию Программа ежедневник

ПРОГРАММА LAZARUS!
Еще раз всем привет) Мне снова нужна ваша помощь!
Написал программу ежедневник. По своему функционалу она должна запускаться на вкладке которая соответсвует сегодняшнему дню недели (эта функция работает). Кроме того, должна быть возможность настройки фона, размера шрифта и его стиля на каждый день, и чтобы эти настройки сохранялись в .ini файл даже после закрытия программы, чтобы при очередном запуске программа имела настройки, которые были до закрытия. Программу написал, но сохранение настроек не работает, и после закрытия и во время листания вкладок, все настройки шрифта и фона сбиваются. Пожалуйста, можете поправить код где есть ошибки? Исходник во вложении.

Код:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, Forms, Controls, Graphics, Dialogs, StdCtrls, ComCtrls,
  ColorBox, Grids, CheckLst, ExtCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;

    ColorBox1: TColorBox;
    ColorBox2: TColorBox;
    FontDialog1: TFontDialog;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Memo1: TMemo;
    TabControl1: TTabControl;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure Button4Click(Sender: TObject);
    procedure Button5Click(Sender: TObject);
    procedure ColorBox1Change(Sender: TObject);
    procedure ColorBox2Change(Sender: TObject);
    procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure TabControl1Change(Sender: TObject);
  private

  public

  end;


Type
 dn = record
 cfont,cback: TColor;
 end;
var
  Form1: TForm1;
  m: array[1..7] of dn;
  f: file of dn;

implementation

{$R *.lfm}

{ TForm1 }

procedure TForm1.FormCreate(Sender: TObject);
var i: byte;
begin
 assignfile(f,'week.ini');
 reset(f);
 for i:=1 to filesize(f) do read(f,m[i]);
 closefile(f);
 Form1.Caption:=FormatDateTime('ddd',Now);
 for i:=0 to 6 do
 if TabControl1.Tabs[i]=Form1.Caption then break;
 TabControl1.TabIndex:=i;
 TabControl1Change(TabControl1);
end;

procedure TForm1.TabControl1Change(Sender: TObject);
begin
 ColorBox1.Selected:=m[TabControl1.TabIndex+1].cfont;
 ColorBox2.Selected:=m[TabControl1.TabIndex+1].cback;
 memo1.Font.Color:=ColorBox1.Selected;
 memo1.Color:=ColorBox2.Selected;
end;


procedure TForm1.ColorBox1Change(Sender: TObject);
begin
  memo1.Font.Color:=ColorBox1.Selected;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Memo1.Font.Size:=8;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Memo1.Font.Size:=14;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
  Memo1.Font.Size:=18;
end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  Memo1.Font.Size:=24;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  if FontDialog1.Execute then Memo1.Font:=FontDialog1.Font;
end;

procedure TForm1.ColorBox2Change(Sender: TObject);
begin
  memo1.Color:=ColorBox2.Selected;
end;

procedure TForm1.FormClose(Sender: TObject; var CloseAction: TCloseAction);
var i: byte;
begin
 assignfile(f,'week.ini');
 rewrite(f);
 for i:=1 to 7 do write(f,m[i]);
 closefile(f);

end;

end.
Вложения
Тип файла: rar ejednevnik.rar (356.7 Кб, 19 просмотров)

Последний раз редактировалось Romanza123; 21.09.2019 в 16:51.
Romanza123 вне форума Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ежедневник Placebo228 PHP 3 07.11.2012 18:22
Программа Ежедневник olzathebest Общие вопросы C/C++ 0 07.10.2012 19:31