ms sql 
table 裡字符串字段我基本上都用varchar類型
存儲過程中定義參數為varchar 也要加上長度,比如 varchar (10)
但是,需要對table 的字段長度做改動時,比如10碼改為15碼。存儲過程沒有相應改動的話,運行起來鐵定出錯了。
有沒有辦法避免這種情況?
-----------------------------------------
listbox
我設了listbox1的popmenu,但是點右鍵時,無法選定當前行,於是我用下面的方法。
-->
procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if button=mbright then
    begin
      SendMessage(activecontrol.Handle, WM_LBUTTONDOWN,1,0);
    end;
end;
//但是效果不是很滿意,(你先用左鍵選定一行,再點右鍵,結果會跳到第一行去了)
請問有沒有更好的法子?

解决方案 »

  1.   

    procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      ListBox1.ItemIndex:=listbox1.ItemAtPos(Point(x,y),false)
    end;
      

  2.   

    回复人: jinjazz(近身剪(N-P攻略)) ( ) 信誉:110  2005-02-02 09:00:00  得分: 0  
    那么容易避免这些错误还要系统分析干什么
    ------->
    啊,沒法子嗎?
    我意思是說要sql 裡能不能定義成像delphi 裡string 那樣字符串,
    不用一開始就把它長度定死了。
      

  3.   

    procedure TForm1.ListBox1MouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    begin
      ListBox1.ItemIndex:=listbox1.ItemAtPos(Point(x,y),false)
    end;
    ------>
    這個OK,實現的很好。
    阿裡阿多!