zoukankan      html  css  js  c++  java
  • Delphi中动态创建的Panel无法改变颜色的解决办法(要把Panel的ParentBackground设为False)

    刚开始代码如下:

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Panel: TPanel;
    begin
      Panel := TPanel.Create(Form1);
      Panel.Name := 'pnlPreVideo';
      Panel.Parent := Form1;
      Panel.OnClick := Panel1Click;
      MoveWindow(Panel.Handle, 10, 10, 100, 100, True);
    end;
    
    procedure TForm1.Panel1Click(Sender: TObject);
    begin
      if  (Sender as TPanel).Name ='pnlPreVideo' then
        (Sender as TPanel).Color := clGreen;
    end;

    单击时,颜色不变,问网友,原来是一个BUG,更正后代码如下:

    procedure TForm1.Button1Click(Sender: TObject);
    var
      Panel: TPanel;
    begin
      Panel := TPanel.Create(Form1);
      Panel.Name := 'pnlPreVideo';
      Panel.ParentBackground := False;
      Panel.Parent := Form1;
      Panel.OnClick := Panel1Click;
      MoveWindow(Panel.Handle, 10, 10, 100, 100, True);
    end;
    
    procedure TForm1.Panel1Click(Sender: TObject);
    begin
      if  (Sender as TPanel).Name ='pnlPreVideo' then
        (Sender as TPanel).Color := clGreen;
    end;

    http://www.cnblogs.com/jxgxy/p/3248408.html

  • 相关阅读:
    数据结构与算法之二叉树的遍历
    数据结构与算法之二叉树
    数据结构与算法之单调栈
    数据结构与算法之栈
    C里面的变长参数
    C++模板问题之多出的static
    通过返回值'重载'函数
    flask小记
    ANSI C
    Python坑
  • 原文地址:https://www.cnblogs.com/findumars/p/4964841.html
Copyright © 2011-2022 走看看