兩個COMboBox 可以有不同的組合,我想用一個BOUTTON控件觸發不同的事件。用case 可以啊,不行的話怎么做?謝謝!在線等

解决方案 »

  1.   

    可以用 if then
           else if  then
    但是根據樓主的需求,覺得不合理,假如第一個有100個項次,第二個有1000個項次的話,那這兩個的組合有100*1000=100000種可能性.
    難道真的要寫100000次 if語句嗎? 期待高人有好的辦法.
    不知道button按鈕下是做什麽事件的?
      

  2.   

    用BOUTTON触发不同事件,事件中做什么,与COMboBox是什么关系
      

  3.   

    1:XXXXX
    ┕a:XXXXX
    ┕b:XXXXX
    2:XXXXX
    ┕c:XXXXX
    ┕d:XXXXX
      

  4.   

    好比工厂跟仓库
    好比物件分类跟物件
    1:XXXXX //1级分类
    ┕d:XXXXX //2级分类截取第一位判断是否为:┕
    再去相应的数据库里查,OK?
      

  5.   

    先读combobox中的事件啊,自己动态匹配。
    for i:=0 to combobox.recount -1 do
    begin
    if **** then
    如果是那个break;
    end;
      

  6.   

    每个COMboBox 都代表什么信息
      

  7.   

    既然项不多,那么就写几个IF... ELSE IF...不就完了吗? 
      

  8.   

    以下是我處理多個查詢時的代碼,樓主參考一下procedure Tqueryfrm.Button3Click(Sender: TObject);
        function AddPercent(sSource:string):string;
         begin
         result := sSource;
            if Pos('%',sSource)=0 then Result := sSource+'%';
        end;
    var sqlstr,swhere:string;
    begin
         sqlstr:='Select PQI_NUMBER,PQI_SUPPLIER,PQI_OSPOP,PQI_CREATER,PQI_CREATEDATE,PQI_CURRENCY,PQI_Status,PQI_TEXT,PQI_ID From tblospquota where PQI_NUMBER in(';
         sqlstr:=sqlstr+'Select distinct PQI_NUMBER From tblospquota A,tblospquotadt B where A.PQI_ID=B.PQI_ID(+) ';
         swhere:='';
         if combobox1.Text <> ''  then sWhere := sWhere + format(' AND A.PQI_NUMBER LIKE''%s'' ',  [ AddPercent(combobox1.Text) ]);
         if combobox2.Text <> ''  then sWhere := sWhere + format(' AND A.PQI_SUPPLIER LIKE ''%s'' ',  [ AddPercent(suppler) ]);
         if combobox3.Text <> ''  then sWhere := sWhere + format(' AND A.PQI_OSPOP LIKE ''%s'' ',  [ AddPercent(combobox3.Text) ]);
         if combobox4.Text <> ''  then sWhere := sWhere + format(' AND B.QID_ITM_CODE LIKE ''%s'' ',  [ AddPercent(combobox4.Text) ]);
         if radiogroup1.ItemIndex<>-1 then  sWhere := sWhere + format(' AND A.PQI_STATUS LIKE ''%s'' ',  [ AddPercent(status) ]);
         sqlstr:=sqlstr+swhere;
         sqlstr:=sqlstr+')';
         with quota.quotafrm.ADOQuery1 do
          begin
            close;
            sql.Clear;
            sql.Add(sqlstr);
            open;
          end;
    end;
      

  9.   

    用一个事件即可,事件中判断combobox内容,内容不同操作不同(if )