วันพฤหัสบดีที่ 2 กุมภาพันธ์ พ.ศ. 2555

DevExpress GetSkinNames

procedure GetSkinNames(aList: TStrings);
var
  i : Integer;
begin
  for i := 0 to Pred(cxLookAndFeelPaintersManager.Count ) do
    AList.Add( cxLookAndFeelPaintersManager.Items[ i ].LookAndFeelName );
end;
/////////////////
uses
...., cxLookAndFeelPainters, dxSkinInfo, dxGDIPlusClasses;

procedure GetSkinNamesAndIcon(aList: TStrings; aImageList16 : TcxImageList);
var
  i         : Integer;
  fDetails  : TdxSkinDetails;
  fIcon     : TdxPNGImage;
  fPainter  : TcxCustomLookAndFeelPainter;
  fSkinInfo : TdxSkinInfo;
  fImg      : TBitmap;
  fTempList : TStrings;
begin
  fImg := TBitmap.Create;
  fTempList := TStringList.Create;
  try
    for i := 0 to Pred( cxLookAndFeelPaintersManager.Count ) do
    begin
      fTempList.Add( cxLookAndFeelPaintersManager.Items[ i ].LookAndFeelName );
    end;
    for i := 0 to Pred( fTempList.Count ) do
    begin
      cxLookAndFeelPaintersManager.GetPainter(fTempList[i], fPainter);
      fPainter.GetPainterData(fSkinInfo) ;
      if fPainter.GetPainterDetails(fDetails) then
      begin
        aList.Add(fTempList[i]);
        fIcon := fDetails.Icons[sis16];
        fImg.Assign(fIcon);
        aImageList16.Add(fImg, Nil);
      end;
    end;
  finally
    fImg.Free;
    fTempList.Free;
  end;
end;

ไม่มีความคิดเห็น:

แสดงความคิดเห็น