我想让button组件具有BitBtn1组件属性,用as运算符如何转换,请举个例子?小弟新手,下面是我自己写的,是错误的,我不知道正确的写法应该是?
procedure TForm1.Button1Click(Sender: TObject);
begin
with Sender as TComponent do
begin
button1.kind:=bkAbort;
end;
end;
end.

解决方案 »

  1.   


      with TBitBtn(Sender) do
      begin
        Kind := bkAbort;
      end;你得确保Sender是一个BitBtn
      

  2.   

    我想让button组件具有BitBtn1组件属性,用as运算符如何转换,请举个例子?小弟新手,下面是我自己写的,是错误的,我不知道正确的写法应该是? 
    ------------------------------------------------------------------------------------
    1、首先确保你的button组件是TBitBtn类型,否则转换后会出错;
    2、转换: with TBitBtn(Sender) do
      begin
        Kind := bkAbort;
      end;

    with Sender as TBitBtn do
    begin
    button1.kind:=bkAbort;
    end;
      

  3.   

    with Sender as TBitBtn do 
    begin 
     kind:=bkAbort; 
    end;編譯能通過,但運行會報錯
      

  4.   

    各位误解了楼主的意思了吧?
    楼主说要让TButton类创建的对象有TBitbtn特有的属性(如king),这是行不通的
    如果是TButton创建的对象,转换为TBitbtn就是一种错误的操作