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

📄 jia.pas

📁 这是一套小型家庭理财软件delphi源代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
  StringAlignGrid1.Cells[1,0] := '一';
  StringAlignGrid1.Cells[2,0] := '二';
  StringAlignGrid1.Cells[3,0] := '三';
  StringAlignGrid1.Cells[4,0] := '四';
  StringAlignGrid1.Cells[5,0] := '五';
  StringAlignGrid1.Cells[6,0] := '六';

  T:=FormatDateTime('yyyy-mm-dd',date);
  nian:= Copy(t,1,4);
  yue:= Copy(t,6, 2);
  tian:= Copy(t,9,2);
  ShowRiLi(nian,yue,tian);

  //显示本月记录
  T:=FormatDateTime('yyyy-mm-dd',date);
  y:= Copy(t,1,4);
  m:= Copy(t,6, 2);
  if copy(m,2,1)='-' then m:=copy(m,1,1);
  MMax :=Form1.SetMMax(StrToInt(y),StrToInt(m));
  SDate :=StrToDate(y+'-'+m+'-01');
  EDate :=StrToDate(y+'-'+m+'-'+IntToStr(MMax));
  Table1.IndexName :='DATE';
  Table1.SetRange([Form1.SDate],[Form1.EDate]);
  Table1.ApplyRange;
  Table1.Filtered := False;  //   去过滤
  TableMoneyJS;

  if NameQX = '管理员' then    //设定权限
  else
  if NameQX = '普通用户' then
  begin
    SpeedButton_weihu.Enabled := False;
    Form_GL.RadioButton_GLY1.Enabled := False;
    Form_GL.RadioButton_GLY.Enabled := False;
    Form_GL.RadioButton_PT.Enabled := False;
    Form_GL.SpeedButton_huifuY.Enabled := False;
  end
  else
  begin
    SpeedButton_weihu.Enabled := False;
    SpeedButton_guanli.Enabled := False;
    SpeedButton_tianjia.Enabled := False;
    SpeedButton_bianji.Enabled := False;
  end;

  if NewProcedure then
  begin
    ShowMessage('请先创建用户!');
    SpeedButton_guanliClick(sender);
  end;

  TreeView1.SetFocus;
end;

procedure TForm1.TreeView1DblClick(Sender: TObject);
var  //查询记录
  mynode : TTreeNode;
  s1,s2,s3 : String;
begin
  case TreeView1.Selected.Level of
  0:            begin
                  mynode := TreeView1.Selected;
                  s1 := mynode.Text;
                  Table1.Filter :='type1 ='+#39+s1+#39;
                  Table1.Filtered := true;
                  TableMoneyJS;
                end;
  1:            begin
                  s2 := TreeView1.Selected.Text;
                  mynode := TreeView1.Selected.Parent;
                  s1 := mynode.Text;
                  Table1.Filter :='(type1 ='+#39+s1+#39+
                    ') and (type2 ='+#39+s2+#39+')';
                  Table1.Filtered := true;
                  TableMoneyJS;
                end;
  2:            begin
                  mynode := TreeView1.Selected.Parent.Parent;
                  s1 := mynode.Text;
                  mynode := TreeView1.Selected.Parent;
                  s2 := mynode.Text;
                  s3 := TreeView1.Selected.Text;
                  Table1.Filter :='(type1 ='+#39+s1+#39+
                    ') and (type2 ='+#39+s2+#39+') and (type3 ='
                    +#39+s3+#39+')';
                  Table1.Filtered := true;
                  TableMoneyJS;
                end;
  end;
end;

procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
  if (NameQX = '管理员') or (NameQx = '普通用户') then
    SpeedButton_bianjiClick(Sender)
  else
    ShowMessage('权限不够!');
end;

procedure TForm1.SpeedButton_bianjiClick(Sender: TObject);
var
  I : Integer;
  MyNode : TTreeNode;
  Form_TJ : TForm_TJ;
begin //编辑记录
  if Table1.RecordCount  <>0 then
  begin
    Form_TJ := TForm_TJ.Create(Application);
    try
      Form_TJ.ComboBox_type1_TJ.Clear;
      for i:=0 to TreeView1.Items.Count-1 do
      begin
        MyNode := TreeView1.Items[i];
        if MyNode.Level = 0 then
          Form_TJ.ComboBox_type1_tj.Items.Add(mynode.Text);
      end;
      Form_TJ.Caption :='编辑记录';
      Form_TJ.SpeedButton_del.Visible := True;
      if NameQX <> '管理员' then Form_TJ.SpeedButton_del.Enabled := False;
      Form_TJ.TreeView1.Items := Form_GL.TreeView1.Items;
      Form_TJ.ComboBox_spot_tj.Items := Form_GL.ListBox_spot.Items;
      Form_TJ.ComboBox_name_tj.Items := Form_GL.ListBox_name.Items;
      Form_TJ.UpdateTjDate;
      Form_TJ.ShowModal;
    finally
      Form_TJ.Free;
    end;
  end;

end;

procedure TForm1.SpeedButton_ExitClick(Sender: TObject);
begin
  Close;
end;

procedure TForm1.SpeedButton_tianjiaClick(Sender: TObject);
var
  I : Integer;
  MyNode : TTreeNode;
  Form_TJ : TForm_TJ;
begin   //添加记录
  Form_TJ := TForm_TJ.Create(Application);
  try
    Form_TJ.Caption :='添加记录';
    Form_TJ.SpeedButton_del.Visible := False;
    Form_TJ.TreeView1.Items := Form_GL.TreeView1.Items;
    Form_TJ.ComboBox_spot_tj.Items := Form_GL.ListBox_spot.Items;
    Form_TJ.ComboBox_name_tj.Items := Form_GL.ListBox_name.Items;
    for i:=0 to Form_TJ.ComboBox_name_tj.Items.Count -1 do
      if Form_TJ.ComboBox_name_tj.Items[i] = Name then
        Form_TJ.ComboBox_name_tj.ItemIndex := i;
    Form_TJ.DateTimePicker1.Date := date;

    Form_TJ.ComboBox_type1_TJ.Clear;
    for i:=0 to TreeView1.Items.Count-1 do
    begin
      MyNode := TreeView1.Items[i];
      if MyNode.Level = 0 then
        Form_TJ.ComboBox_type1_tj.Items.Add(mynode.Text);
    end;

    Form_TJ.ShowModal;
  finally
    Form_TJ.Free;
  end;
end;


procedure TForm1.TreeView1KeyPress(Sender: TObject; var Key: Char);
begin
  if Key = #13 then
     TreeView1DblClick(Sender);
end;

procedure TForm1.SpeedButton_chaxunClick(Sender: TObject);
var
  Form_CX : TForm_CX;
  MyNode : TTreeNode;
  i : Integer;
begin //查询按钮
  Form_CX := TForm_CX.Create(Application);
  try
    Form_CX.DateTimePicker_S.Date := SDate;
    Form_CX.DateTimePicker_Z.Date := EDate;
    Form_CX.ComboBox_type1.Clear;
    Form_CX.ComboBox_type2.Clear;
    Form_CX.ComboBox_type3.Clear;
    Form_CX.Edit_money.Clear;
    Form_CX.ComboBox_spot.Clear;
    for i:=0 to Form1.TreeView1.Items.Count-1 do
    begin
      MyNode := Form1.TreeView1.Items[i];
      if MyNode.Level = 0 then
        Form_CX.ComboBox_type1.Items.Add(MyNode.Text);
    end;
    Form_CX.ShowModal;
  finally
    Form_CX.Free;
  end;
end;

procedure TForm1.SpeedButton_jt_cxClick(Sender: TObject);
begin
  if Form_GL.Edit_j22.Text = '' then
  begin
    SDate := Date;
    EDate := SDate;
    chaxun;
    TableMoneyJS;
  end
  else
    WinExec(pChar(Form_GL.Edit_j22.Text),SW_SHOWNORMAL);
end;

procedure TForm1.SpeedButton_zt_cxClick(Sender: TObject);
begin
  if Form_GL.Edit_j11.Text = '' then
  begin
    SDate := SDate-1;
    EDate := SDate;
    chaxun;
    TableMoneyJS;
  end
  else
    WinExec(pChar(Form_GL.Edit_j11.Text),SW_SHOWNORMAL);
end;

procedure TForm1.SpeedButton_mt_cxClick(Sender: TObject);
begin
  if Form_GL.Edit_J33.Text = '' then
  begin
    SDate := SDate+1;
    EDate := SDate;
    chaxun;
    TableMoneyJS;
  end
  else
    WinExec(pChar(Form_GL.Edit_J33.Text),SW_SHOWNORMAL);
end;

procedure TForm1.SpeedButton_tongjiClick(Sender: TObject);
var
  I : Integer;
  mynode : TTreeNode;
begin
  Form_TU := TForm_TU.Create(Application);
  try
    Form_TU.ComboBox_spot.Items.Clear;
    Form_TU.ComboBox_type1.Items.Clear;
    Form_TU.ComboBox_type2.Items.Clear;
    Form_TU.ComboBox_type3.Items.Clear;

    Form_TU.DateTimePicker_S.Date := SDate;
    Form_TU.DateTimePicker_Z.Date := EDate;
    Form_TU.ComboBox_spot.Items := Form_GL.ListBox_spot.Items;
    Form_TU.ComboBox_spot.Items.Insert(0,'');
    for i:=0 to TreeView1.Items.Count-1 do
    begin
      MyNode := TreeView1.Items[i];
      if MyNode.Level = 0 then
        Form_TU.ComboBox_type1.Items.Add(MyNode.Text);
    end;
    Form_TU.ComboBox_type1.Items.Insert(0,'');
    Form_TU.ComboBox_type1.ItemIndex := 1;
    Form_TU.ComboBox_type1Click(Sender);

    Form_TU.Show;
  except
    Form_TU.Free;
  end;
end;

procedure TForm1.SpeedButton_guanliClick(Sender: TObject);
begin
  Form_GL.ShowModal;
end;

procedure TForm1.StringAlignGrid1DblClick(Sender: TObject);
var
  T,nian,yue,ri : String;
  i,j : Integer;
begin
 //双击日期显示'查询

  ri := StringAlignGrid1.Cells[StringAlignGrid1.Col,StringAlignGrid1.Row ];
  if ri <> '' then
  begin
    for i:=1 to StringAlignGrid1.RowCount-1 do
      for j:=0 to StringAlignGrid1.ColCount-1 do
        StringAlignGrid1.CellFont[j,i].Color := clBlue;
    StringAlignGrid1.CellFont[StringAlignGrid1.Col,StringAlignGrid1.Row].Color := clRed;
    T:=FormatDateTime('yyyy-mm-dd',date);
    nian:= Copy(t,1,4);
    yue:= Copy(t,6, 2);
    SDate := StrToDate(nian+'-'+yue+'-'+ri);
    EDate := SDate;
    chaxun;
    TableMoneyJS;
  end;

end;

procedure TForm1.StringAlignGrid1Click(Sender: TObject);
var
  T,nian,yue : String;
  i,j,n,sRow,sCol,eRow,eCol : Integer;
begin
  //单击日期显示'查询

  if StringAlignGrid1.Cells[StringAlignGrid1.Col,StringAlignGrid1.Row ] <> '' then
  begin
    n := 0;
    sRow := 0;
    sCol := 0;
    eRow := 0;
    eCol := 0;
    for i:=1 to StringAlignGrid1.RowCount-1 do
      for j:=0 to StringAlignGrid1.ColCount-1 do
      begin
        if StringAlignGrid1.CellFont[j,i].Color = ClRed then
        begin
          n := n+1;
          sRow := i;
          sCol := j;
        end;
      end;

    if n<1 then StringAlignGrid1.CellFont[StringAlignGrid1.Col,StringAlignGrid1.Row].Color := ClRed;

    if n=1 then
    begin
      if sRow < StringAlignGrid1.Row then
      begin
        eRow := StringAlignGrid1.Row;
        eCol := StringAlignGrid1.Col;
      end
      else
        if sRow > StringAlignGrid1.Row then
        begin
          eRow := sRow;
          eCol := sCol;
          sRow := StringAlignGrid1.Row;
          sCol := StringAlignGrid1.Col;
        end
        else
        if sRow = StringAlignGrid1.Row then
        begin
          eRow := sRow;
          if sCol <= StringAlignGrid1.Col then
            eCol := StringAlignGrid1.Col
          else
          begin
            eCol := sCol;
            sCol := StringAlignGrid1.Col;
          end;
      end;

      j:= sCol;
      i:= sRow;
      StringAlignGrid1.CellFont[j,i].Color := ClRed;
      while (i <> eRow) or (J <> eCol) do
      begin
        j:=j+1;
        if j>6 then
        begin
          j :=0;
          i := i+1;
        end;
        StringAlignGrid1.CellFont[j,i].Color := ClRed;
      end;

    T:=FormatDateTime('yyyy-mm-dd',date);
    nian:= Copy(t,1,4);
    yue:= Copy(t,6, 2);
    SDate := StrToDate(nian+'-'+yue+'-'+StringAlignGrid1.Cells[sCol,sRow]);
    EDate := StrToDate(nian+'-'+yue+'-'+StringAlignGrid1.Cells[eCol,eRow]);
    chaxun;
    TableMoneyJS;

    end;

    if n>1 then
    begin
      for i:=1 to StringAlignGrid1.RowCount-1 do
        for j:=0 to StringAlignGrid1.ColCount-1 do
          StringAlignGrid1.CellFont[j,i].Color := clBlue;
      StringAlignGrid1.CellFont[StringAlignGrid1.Col,StringAlignGrid1.Row].Color := clRed;
    end;

  end;

end;

procedure TForm1.SpeedButton_weihuClick(Sender: TObject);
begin    //显示数据库维护页面
  Form_WH := TForm_WH.Create(Application);
  try
    Form_WH.ShowModal;
  except
    Form_WH.Free;
  end;
end;

end.

⌨️ 快捷键说明

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