RT
类似QQ2009的登录界面
在每一项的后面加一个删除按钮,表示点下这个按钮就会删除Combobox的这一项

解决方案 »

  1.   


    procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
      Rect: TRect; State: TOwnerDrawState);
    begin
      ComboBox1.Canvas.Font.Color := ComboBox1.Font.Color;
      ComboBox1.Canvas.TextOut(Rect.Left,Rect.Top,ComboBox1.Items.Strings[index]);
      ComboBox1.Canvas.Font.Color := clRed;
      ComboBox1.Canvas.TextOut(Rect.Right - 16,Rect.Top,'x');
    end;
      

  2.   

    那我要将下拉列表中的内容加到combobox的编辑框里,后面的‘x ’是不是也进去了,怎么把叉去掉呢??
      

  3.   

    那我要将下拉列表中的内容加到combobox的编辑框里,后面的‘x ’是不是也进去了,怎么把叉去掉呢??
      

  4.   


    //x去掉就去掉呗
    ComboBox1.Canvas.TextOut(Rect.Right - 16,Rect.Top,'');
      

  5.   

    先把style := csOwnerDrawFixed;
    procedure TForm1.ComboBox1DrawItem(Control: TWinControl; Index: Integer;
      Rect: TRect; State: TOwnerDrawState);
      var
        aRect : TRect;
    begin
       aRect := Rect;
       aRect.Right := Rect.Right;
       aRect.Left :=  Rect.Left+80;
       ComboBox1.Canvas.Font.Color := clBlue;
       ComboBox1.Canvas.TextRect(Rect,Rect.Left,Rect.Top,ComboBox1.Items[index]);
       ComboBox1.Canvas.Font.Color := clRed;
       ComboBox1.Canvas.TextRect(aRect,aRect.Right-20,aRect.Top,'X');
    end;
      

  6.   

    真是厉害啊,用一个button控件代替那个‘x'可以吗
      

  7.   

    我记得可以在标题栏上画按钮。而且可以触发按钮的事件。
    lz 找找帖子,然后把这个按钮画到 List 里看看有没有效果。