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

📄 unit1.pas

📁 一个完整的彩票软件的源代码
💻 PAS
📖 第 1 页 / 共 2 页
字号:
      mypos[mydata[i]]:=i;
//      mylbl[ipos].caption:=inttostr(tmp);
   end;
   setjl;
   for i:=1 to maxdis do begin
//      mylbl[i].caption:=inttostr(myjl[i])+'/'+inttostr(totaljl);
   end;

end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
   produce
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  producehistory;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  i:integer;
begin
  for i:=1 to maxdis do begin
    myedit[i].text:=inttostr(mydata[i]);
  end;

end;

procedure TForm1.FormShow(Sender: TObject);
begin
   disall;
end;
procedure Tform1.disall;
var
  i:integer;
begin
   image1.Canvas.Brush.Color:=clbtnface;
   image1.width:=2+(120 div dsize)*(maxdis-1)+29;
   image1.height:=26;
   image1.left:=(panel1.Width-image1.width) div 2;
   image1.Canvas.Pen.color:=clbtnface;
   image1.canvas.Rectangle(image1.canvas.cliprect);
   image2.canvas.brush.color:=clbtnface;
   image2.canvas.pen.color:=clblack;
   image2.Canvas.Rectangle(image1.left-10,image1.top-10,image1.left-10+image1.width+20,image1.top-10+image1.height+20);

   for i:=1 to 100 do begin
{      mylbl[i]:=tlabel.create(panel1);
      mylbl[i].parent:=panel1;
      mylbl[i].left:=image1.left+(120 div dsize)*(i-1);
      mylbl[i].top:=image1.top+38;
      mylbl[i].caption:='hello';}
      if i<=maxdis then begin
        if myedit[i]=nil then
        myEdit[i]:=tedit.create(panel2);
        myEdit[i].parent:=panel2;
        myEdit[i].left:=edit3.left+30*i+25;
        myEdit[i].Width:=25;
        myEdit[i].top:=edit3.top;
        myedit[i].tag:=i;
        myedit[i].OnKeyPress:=mykeypress;
        myedit[i].OnChange:=mychange;
        myedit[i].visible:=true;
      end
      else begin
        if myedit[i]<>nil then myedit[i].visible:=false;
      end;
   end;

   produce;
end;

procedure TForm1.FormDestroy(Sender: TObject);
var
  i:integer;
begin
   for i:=1 to 100 do begin
      if myedit[i]<>nil then begin
        myedit[i].free;
{       mylbl[i].free;}
      end;
   end;

end;

procedure TForm1.DBGrid1CellClick(Column: TColumn);
var
  i:integer;
begin
  edit3.text:=table1.fields[0].asstring;
  for i:=1 to maxdis do begin
    myedit[i].text:=table1.fields[i].asstring;
  end;
  dbgrid1.setfocus;
end;

procedure TForm1.Button4Click(Sender: TObject);
var
  i:integer;
begin
  if (edit3.text='') then begin
    showmessage('请输入期别!');
    edit3.setfocus;
    exit;
  end;
  for i:=1 to maxdis do begin
    if myedit[i].text='' then begin
     showmessage('请输入球号!');
     myedit[i].setfocus;
      exit;
    end;

  end;

  table1.Append;
  table1.Fields[0].asstring:=edit3.text;
  for i:=1 to maxdis do begin
    table1.Fields[i].asinteger:=strtoint(myedit[i].text);

  end;
  table1.Post;
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  if not table1.isEmpty then
  table1.delete;
end;

procedure TForm1.myKeyPress(Sender: TObject; var Key: Char);
var
  i:integer;
begin

  if not (key in ['0'..'9',#8,#13])
    then key:=#0;
  if key=#13 then
    if (sender as tedit).tag<maxdis then
       myedit[(sender as tedit).tag+1].setfocus
    else begin
       key:=#0;
       button4click(nil);
       for i:=1 to maxdata do begin
         myedit[i].text:='';
       end;
       edit3.text:=inttostr((strtoint(edit3.text)+1));
       edit3.text:=StringOfChar('0', 5-length(edit3.text))+edit3.text;
       myedit[1].setfocus;
    end;
  if (length((sender as tedit).text)=2) and not (key in [#8,#13]) then key:=#0;
end;



procedure TForm1.myChange(Sender: TObject);
begin
  if (length((sender as tedit).text)=2) then begin
    if (sender as tedit).tag<maxdis then
       myedit[(sender as tedit).tag+1].setfocus
    else begin
{       button4click(nil);
       for i:=1 to maxdata do begin
         myedit[i].text:='';
       end;
       myedit[1].setfocus;}
    end;
    end;


end;

procedure TForm1.Button6Click(Sender: TObject);
var
  i:integer;
begin
  if (edit3.text='') then begin
    showmessage('请输入期别!');
    edit3.setfocus;
    exit;
  end;

  table1.edit;
  table1.Fields[0].asstring:=edit3.text;  
  for i:=1 to maxdis do begin
    table1.Fields[i].asinteger:=strtoint(myedit[i].text);

  end;
  table1.Post;

end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9',#8,#13])
    then key:=#0;
  if (length(edit1.text)=2) and not (key in [#8,#13]) then key:=#0;
  if key=#13 then speedbutton2click(nil);
end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
  if not (key in ['0'..'9',#8,#13])
    then key:=#0;
  if (length(edit2.text)=2) and not (key in [#8,#13]) then key:=#0;
  if key=#13 then speedbutton3click(nil);

end;

procedure TForm1.SpeedButton2Click(Sender: TObject);
begin
  if (edit1.text<>'') then begin
    if (strtoint(edit1.text)<1) or (strtoint(edit1.text)>maxdata) then begin
      showmessage('非法球号'+edit1.text+', 故加入失败');
      edit1.text:='';
      edit1.setfocus;
      exit

    end;

    if listbox2.items.count=maxdata-listbox1.items.count-maxdis then
    begin
      showmessage('特殊球数已经超过总球数'+inttostr(maxdata)+'-'+'中奖球数'+inttostr(maxdis)+', 故加入失败');
      edit2.text:='';
      edit1.setfocus;
      exit
    end;

    if (listbox1.items.count=maxdis)  then
    begin
      showmessage('已经超过最大中奖球数'+inttostr(maxdis)+', 故加入失败');
      edit1.text:='';
      edit1.setfocus;
      exit
    end;
    if listbox2.items.indexof(inttostr(strtoint(edit1.text)))>-1 then
    begin
      showmessage('在''除''列表中已经有此数据, 故加入失败');
      edit1.text:='';
      edit1.setfocus;
      exit
    end;
    if listbox1.items.indexof(inttostr(strtoint(edit1.text)))=-1 then
    begin
      listbox1.items.Add(inttostr(strtoint(edit1.text)));
    end;
  end;
  edit1.text:=''
end;

procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
    if listbox1.itemindex=-1 then begin
      showmessage('请选择要删除的球号!');
      listbox1.SetFocus;
      exit;
    end;
    listbox1.items.delete(listbox1.itemindex);


end;

procedure TForm1.SpeedButton3Click(Sender: TObject);
begin
  if (edit2.text<>'') then begin
    if (strtoint(edit2.text)<1) or (strtoint(edit2.text)>maxdata) then begin
      showmessage('非法球号'+edit2.text+', 故加入失败');
      edit2.text:='';
      edit2.setfocus;
      exit

    end;

    if listbox2.items.count=maxdata-listbox1.items.count-maxdis then
    begin
      showmessage('特殊球数已经超过总球数'+inttostr(maxdata)+'-'+'中奖球数'+inttostr(maxdis)+', 故加入失败');
      edit2.text:='';
      edit2.setfocus;
      exit
    end;
  //  showmessage(inttostr(listbox1.items.indexof(inttostr(strtoint(edit2.text)))));
    if listbox1.items.indexof(inttostr(strtoint(edit2.text)))>-1 then
    begin
      showmessage('在''含''列表中已经有此数据, 故加入失败');
      edit2.text:='';
      edit2.setfocus;
      exit
    end;
    if listbox2.items.indexof(inttostr(strtoint(edit2.text)))=-1 then
    begin
      listbox2.items.Add(inttostr(strtoint(edit2.text)));
    end;
  end;
  edit2.text:='';
end;

procedure TForm1.SpeedButton4Click(Sender: TObject);
begin
    if listbox2.itemindex=-1 then begin
      showmessage('请选择要删除的球号!');
      listbox1.SetFocus;
      exit;
    end;
    listbox2.items.delete(listbox2.itemindex);

end;

procedure TForm1.Button7Click(Sender: TObject);
begin
    application.CreateForm(Tform2,form2);
    form2.show;
    button7.enabled:=false;

end;

procedure TForm1.Edit3KeyPress(Sender: TObject; var Key: Char);
begin

  if not (key in ['0'..'9',#8,#13])
    then key:=#0;
  if key=#13 then myedit[1].setfocus;
  if (length(edit3.text)=5) and not (key in [#8,#13]) then key:=#0;

end;

procedure TForm1.Button8Click(Sender: TObject);
begin
  opendialog1.initialdir:=extractfilepath(application.exename);
  if opendialog1.Execute then begin
    try
      table1.close;
      table1.DatabaseName:=extractfilepath(opendialog1.filename);
      table1.tableName:=copy(extractfilename(opendialog1.filename),1,length(extractfilename(opendialog1.filename))-3);
      table1.open;
    except
      on e:exception do showmessage('打开失败,错误内容:'+e.message);
    end;
  end;

end;

procedure TForm1.Button9Click(Sender: TObject);
var
 src,des:TFileName;
begin
  savedialog1.initialdir:=extractfilepath(application.exename);
  if savedialog1.Execute then begin
    try
      src:=table1.DatabaseName+table1.tablename+'.db';
      if copy(copy(savedialog1.filename,length(savedialog1.filename)-2,3),length(copy(savedialog1.filename,length(savedialog1.filename)-2,3))-2,3)<>'.db' then
       des:=savedialog1.filename+'.db'
      else
       des:=savedialog1.filename;
      copyfile(pchar(src),pchar(des),false);
    except
      on e:exception do showmessage('保存失败,错误内容:'+e.message);
    end;
  end;

end;


procedure TForm1.Button10Click(Sender: TObject);
begin
  image2.Canvas.brush.color:=clbtnface;
  image2.Canvas.pen.color:=clbtnface;
  image2.Canvas.Rectangle(image2.canvas.cliprect);

  maxdata:=strtoint(edit4.text);
  if checkbox1.Checked then
  maxdis:=strtoint(edit5.text)+1
  else
  maxdis:=strtoint(edit5.text);
  settable;
  disall;
end;

procedure TForm1.Table1AfterOpen(DataSet: TDataSet);
begin
  table1.indexname:=table1.Fields[0].Name;
end;

end.

⌨️ 快捷键说明

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