打印本文 打印本文 关闭窗口 关闭窗口
TFontNameComboBox及TFontSizeComboBox的实现
作者:武汉SEO闵涛  文章来源:敏韬网  点击数4809  更新时间:2009/4/23 18:38:22  文章录入:mintao  责任编辑:mintao
sp;         for(i = 0;i<((TStrings*)(lParam))->Count-1;i++)
             {
                v2 = StrToInt(((TStrings*)(lParam))->Strings[i]);
                if(v2==v)
                  return true;
                if(v2>v)
                 {
                   ((TStrings*)(lParam))->Insert(i,s);
                   return true;
                 }
            }
          ((TStrings*)(lParam))->Add(s);
        return true;
    }
}
//---------------------------------------------------------------------------


/* TODO : TFontNameComboBox实现部分 */
__fastcall TFontNameComboBox::TFontNameComboBox(TComponent* Owner)
        : TCustomComboBox(Owner)
{
  Sorted = true;
  if(!ComponentState.Contains(csDesigning))
     Build();
}
//---------------------------------------------------------------------------
void __fastcall TFontNameComboBox::Build()
{

  HDC DC = NULL;
  LOGFONT LogFont;
  TNotifyEvent OnChangeEvent;

  OnChangeEvent = OnChange;
  OnChange      = NULL;
  Items->Clear();
  LogFont.lfCharSet        = DEFAULT_CHARSET;
  strcpy(LogFont.lfFaceName,"");
  LogFont.lfPitchAndFamily = 0;

  DC = GetDC(GetDesktopWindow());
  try
    {
      EnumFontFamiliesEx(DC,&LogFont,(FONTENUMPROC)(EnumFontNameProc),LPARAM(Items),0);
    }
  __finally
    {
      ReleaseDC(GetDesktopWindow(),DC);
    }
 OnChange = OnChangeEvent;
 if(Items->Count)
   ItemIndex = 0;

}
//---------------------------------------------------------------------------
/* TODO : TFontSizeComboBox
实现部分 */
__fastcall TFontSizeComboBox::TFontSizeComboBox(TComponent* Owner)
        : TCustomComboBox(Owner)
{
  Sorted = false;
}
//---------------------------------------------------------------------------
void __fastcall TFontSizeComboBox::SetFontName(AnsiString AFontName)
{
  FFontName = AFontName;
  if(!ComponentState.Contains(csDesigning))
    {
      Items-&

上一页  [1] [2] [3] [4] [5] [6]  下一页

打印本文 打印本文 关闭窗口 关闭窗口