Урок 46 Несколько полезных кусков кода
July 20, 2007
в колонках играет Shakira - No Creo
Сегодня я покажу несколько кусков кода, позволяющих расширить функционал приложений. А главное как сделать это без использования дополнительных компонентов. Зачем , спросите вы, ведь использование сторонних компонентов упрощает работу! Всё очень просто, не все компоненты устанавливаются без проблем. Особенно RxLib. Да и прикиньте, если переустановить винду, надо и все библиотеки заново ставить.(Может руки у меня кривые, но RxLib у меня не ставится уже третий раз подряд, выдавая ошибку в файле, несмотря на успешные установки в прошлом).
Часто RxLib устанавливают чтобы TImage поддерживал gif файлы. Они меньше bmp(хотя и bmp можно ужать до размеров gif). Итак, чтобы билдеровский TImage загружал гифы, напишите следущий код в начале программы:
TPicture *Picture = new TPicture();
Picture->RegisterFileFormat(__classid(TGIFImage), "gif", "gif",
__classid(TGIFImage));
delete Picture;
После этого вы сможете загружать в TImage gif файлы.
Конечно, не все типы графических форматов можно таким образом включить в работу. Но jpg можно=).
Также, кажется в rxlib, есть компонент для отображения времени. Для отображения даты и часов нам понадобится label и timer. В событии OnTimer пишем:
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
Label1->Caption = FormatDateTime("hh:nn",Time());
Timer1->Interval=10000;// меньше число, больше точность
}
Если его модифицировать, то можно получить и доли секунд. Для этого заменим код на:
Label1->Caption=Time().FormatString("hh:mm:ss:zz");
Timer1->Interval=1;
Узнаем и изменяем имя компа:
Узнаем:
unsigned long Size = MAX_COMPUTERNAME_LENGTH + 1;
char *Buffer = new char[Size];
GetComputerName(Buffer, &Size);
И изменяем:
SetComputerName("НОВОЕ_ИМЯ_КОМПЬЮТЕРА");
// не забудьте перезагрузиться
Материал подготовил - [ArtuR] 2007
www.builderhelper.org
builder.helper@rambler.ru