Некоторые примеры

Содержание:

Работа с файлами GIF и JPEG в C++Builder'е
Мигание иконкой в панели задач
Список всех шрифтов, установленных в системе (VCL вариант)
Перемещение формы мышью не за заголовок
Получение имени компьютера
Определение размера свободного пространства на диске (VCL вариант)

Получение метки диска
Определение размера диска (VCL вариант)
Получение дня недели (VCL вариант)

 

Работа с файлами GIF и JPEG в C++Builder'е

// Для того, чтобы стандартными средствами C++Builder'a работать с файлами GIF и JPEG,
// добавьте в начало программы следующий код:

TPicture *Picture = new TPicture();
Picture->RegisterFileFormat(__classid(TJPEGImage), "jpg", "jpg",
__classid(TJPEGImage));
delete Picture;

TPicture *Picture = new TPicture();
Picture->RegisterFileFormat(__classid(TGIFImage), "gif", "gif",
__classid(TGIFImage));
delete Picture;

Мигание иконкой в панели задач

// чтобы помигать иконкой приложения в панели задач, разместите на форме компонент TTimer (Timer1)
// и напишите следующий обработчик события OnTimer (предварительно выставив интервал таймера
// и сделав его активным):

void __fastcall TForm1::Timer1Timer(TObject *Sender)
  {
    FlashWindow(Application->Handle, false);
    FlashWindow(Application->Handle, true);
  }

Список всех шрифтов, установленных в системе (VCL вариант)

// список всеъ шрифтов, установленных в системе, содержится в свойстве Fonts
// глобальной переменной Screen.
// нижеприведенный пример показывает заполнение именами шрифтов выпадающего списка:

void __fastcall TForm1::FormCreate(TObject *Sender)
  {
    for (int i = 0; i < Screen->Fonts->Count; i++)
    ComboBox1->Items->Add(Screen->Fonts->Strings[i]);
  }

Перемещение формы мышью не за заголовок

// напишите следующий обработчик события OnMouseDown формы

void __fastcall TForm1::FormMouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y)
  {
    long SC_DRAGMOVE = 0xF012;
    if(Button == mbLeft)
      {
        ReleaseCapture();
        SendMessage(Handle, WM_SYSCOMMAND, SC_DRAGMOVE, 0);
      }
  }

Получение имени компьютера

// для получения имени компьютера напишите следующий код

unsigned long Size = MAX_COMPUTERNAME_LENGTH + 1;
char *Buffer = new char[Size];
GetComputerName(Buffer, &Size);

// после выполнения данного кода имя компьютера будет содержаться в Buffer. После того, как Buffer
// перестанет быть вам нужным, не забудьте вызвать delete [] Buffer.

Определение размера свободного пространства на диске (VCL вариант)

// для определения размера свободного пространства на диске используйте функцию DiskFree,
// объявленную в Sysutils.hpp. В параметрах функции диску А соответствует 1,
// диску В - 2, и т. д., 0 - текущий диск.
// Следующий код определит размер свободного пространства на диске С в байтах.

__int64 FreeSpace = DiskFree(3);

Получение метки диска

// для получения метки диска напишите следующий код

char DiskLabel[MAX_PATH];
char *DiskName = "c:\\"; //
имя диска
GetVolumeInformation(DiskName, DiskLabel, MAX_PATH, NULL, NULL, NULL, NULL, 0);

// в DiskLabel находится метка диска

Определение размера диска (VCL вариант)

// для определения размера диска используйте функцию DiskSize,
// объявленную в Sysutils.hpp. В параметрах функции диску А соответствует 1,
// диску В - 2, и т. д., 0 - текущий диск.
// Следующий код определит размер диска С в байтах.

__int64 Size = DiskSize(3);

Получение дня недели (VCL вариант)

// для получения дня недели воспользуйтесь функцией DayOfWeek() из модуля Sysutils,
// передав ей текущую дату. DayOfWeek возвращает значение от 1 до 7, где 1 - воскресенье,
// 2 - понедельник, и т. д.

int Day = DayOfWeek(Date());

 

Программирование | Главная




Hosted by uCoz