1,单击按钮弹出新窗口
procedure TForm3.N22Click(Sender: TObject); begin Fleibie.showmodal; end;
2,新窗口的oncreate事件里添加自动加载下拉菜单值;
procedure TFleibie.FormCreate(Sender: TObject); var i: Integer; List: TStringList; begin List := TStringList.Create; try //刷新前全部清空原来的列表 ComboBox1.Items.Clear; {建立 List} List.Sorted := True; {指定排序} List.Duplicates := dupIgnore; {避免重复} {把数据加入到 DBComboBox1} List.Clear; frmDataPool.qry需要做的事.open; frmDataPool.qry需要做的事.First; while not frmDataPool.qry需要做的事.Eof do begin List.Add(frmDataPool.qry需要做的事.FieldByName(‘类别‘).AsString); frmDataPool.qry需要做的事.Next; end; // for s in List do // begin // DBComboBox1.Items.Add(s); // end; //把获取到的值加载给combbobox的下拉选项里 ComboBox1.Items:=List; //刷新数据库 frmDataPool.qry需要做的事.Requery; finally List.Free; end; end;
3,单击确定按钮提交更新的类别值到数据库
procedure TFleibie.BitBtn1Click(Sender: TObject); var MyAdoq:TADOQuery; LeiBie:string; begin MyAdoq := TADOQuery.Create(nil); try MyAdoq.Connection := frmDataPool.ADOConnection1; LeiBie:=ComboBox1.text; with MyAdoq do begin Close; SQL.Text := ‘UPDATE 需要做的事 SET 类别 =‘+ LeiBie.QuotedString+‘where 选中 = true‘; ExecSQL; end; //防止程序假死 Application.ProcessMessages; //刷新纪录 frmDataPool.qry需要做的事.Requery; finally MyAdoq.Free; end; end;
时间: 2024-10-11 22:39:40