Unit1.cpp
上传用户:lhxd_sz
上传日期:2014-10-02
资源大小:38814k
文件大小:2k
源码类别:

VC书籍

开发平台:

C++ Builder

  1. //---------------------------------------------------------------------------
  2. #include <vcl.h>
  3. #pragma hdrstop
  4. #include "Unit1.h"
  5. //---------------------------------------------------------------------------
  6. #pragma package(smart_init)
  7. #pragma resource "*.dfm"
  8. TForm1 *Form1;
  9. __fastcall TCharsetObject::TCharsetObject(int FCharset)
  10.   : TObject()
  11. {
  12.      Charset = FCharset;
  13. }
  14. int __stdcall EnumFontsProc(TLogFontA &LogFont, TTextMetricA &,int, Pointer Data);//定义
  15. //---------------------------------------------------------------------------
  16. int __stdcall EnumFontsProc(TLogFontA &LogFont, TTextMetricA &,int, Pointer Data)
  17. {
  18.      TCharsetObject *FontCharset;
  19.      FontCharset = new TCharsetObject((int)LogFont.lfCharSet);
  20.      ((TStrings *)Data)->AddObject((AnsiString)LogFont.lfFaceName,FontCharset);
  21.      return 1;
  22. }
  23. //---------------------------------------------------------------------------
  24. __fastcall TForm1::TForm1(TComponent* Owner)
  25.         : TForm(Owner)
  26. {
  27. }
  28. //---------------------------------------------------------------------------
  29. void __fastcall TForm1::GetFontNames(void)
  30. {
  31.      HDC hDC = GetDC(0);
  32.      void * cTmp = (void *)ComboBox1->Items;
  33.      EnumFonts(hDC, NULL, (FONTENUMPROC) EnumFontsProc, (long) cTmp );
  34.      ReleaseDC(0,hDC);
  35.      ComboBox1->Sorted = True;
  36. }
  37. //---------------------------------------------------------------------------
  38. void __fastcall TForm1::Button1Click(TObject *Sender)
  39. {
  40.   GetFontNames();
  41. }
  42. //---------------------------------------------------------------------------