Читаем Виртуальная библиотека Delphi полностью

 msp.dwRetSize := 255;

 ret := mciSendCommand(Mp.DeviceId, MCI_INFO, MCI_INFO_MEDIA_IDENTITY, longint(@msp));

 if Ret <> 0 then begin

  MciGetErrorString(ret, @MediaString, sizeof(MediaString));

  Memo1.Lines.Add(StrPas(MediaString));

 end else Memo1.Lines.Add(StrPas(MediaString));

 mp.Close;

 Application.ProcessMessages;

 mp.free;

end;

end.

Вопрос:

Как вывести на элемент управления (Window control) текст, содержащий амперсанд — &?

Ответ:

Используя два амперсанда подряд. Windows интерпритирует одиночный амперсанд как указание на то, что следующий символ — горячая клавиша (и поддчеркивает следующий символ вместо изображения аперсанда).

Пример:

Button1.Caption := 'Черное && Белое';

Вопрос:

Как поместить bitmap в Metafile?

Ответ:

см. пример

Пример:

procedure TForm1.Button1Click(Sender: TObject);

var

 m : TmetaFile;

 mc : TmetaFileCanvas;

 b : tbitmap;

begin

 m := TMetaFile.Create;

 b := TBitmap.create;

 b.LoadFromFile('C:\SomePath\SomeBitmap.BMP');

 m.Height := b.Height;

 m.Width := b.Width;

 mc := TMetafileCanvas.Create(m, 0);

 mc.Draw(0, 0, b);

 mc.Free;

 b.Free;

 m.SaveToFile('C:\SomePath\Test.emf');

 m.Free;

 Image1.Picture.LoadFromFile('C:\SomePath\Test.emf');

end;

Вопрос:

Как узнать, что курсор мыши над моей формой?

Ответ:

Можно использовать функцию GetCapture() из Windows API.

Примечание: Cм. документацию Windows для информации об ограничениях функции GetCapture.

Пример:

procedure TForm1.FormDeactivate(Sender: TObject);

begin

 ReleaseCapture;

end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);

begin

 If GetCapture = 0 then SetCapture(Form1.Handle);

 if PtInRect(Rect(Form1.Left,Form1.Top,Form1.Left + Form1.Width, Form1.Top + Form1.Height), ClientToScreen(Point(x, y))) then Form1.Caption := 'Мышка над формой!'

 else Form1.Caption := 'Мышка вне формы...';

end;

Вопрос:

Как программно определить, что приложение работает под Windows NT?

Ответ:

см. пример

Пример:

function IsNT : bool;

var osv : TOSVERSIONINFO;

begin

 result := true;

 GetVersionEx(osv);

 if osv.dwPlatformId = VER_PLATFORM_WIN32_NT then exit;

 result := false;

end;

procedure TForm1.Button1Click(Sender: TObject);

begin

 if IsNt then ShowMessage('Running on NT')

 else ShowMessage('Not Running on NT');

end;

Вопрос:

Как создать bitmap из пиктогрммы (icon)?

Ответ:

Используя Bitmap.Canvas.Draw нарисуйте пиктограмму на Bitmap'е.

Пример:

procedure TForm1.Button1Click(Sender: TObject);

var

 TheIcon : TIcon;

 TheBitmap : TBitmap;

begin

 TheIcon := TIcon.Create;

 TheIcon.LoadFromFile('C:\Program Files\Borland\IcoCur32\EARTH.ICO');

 TheBitmap := TBitmap.Create;

 TheBitmap.Height := TheIcon.Height;

 TheBitmap.Width := TheIcon.Width;

 TheBitmap.Canvas.Draw(0, 0, TheIcon);

 Form1.Canvas.Draw(10, 10, TheBitmap);

 TheBitmap.Free; TheIcon.Free;

end;

Вопрос:

Как создать отдельную подсказку (hint) для каждой ячейки StringGrid?

Ответ:

В приведенном примере отслеживается движение курсора мыши — при перемещении между ячейками StringGrid'а — появляется окно подсказки (hint), показывающее номер текущей строки и колонки.

Пример:

type TForm1 = class(TForm)

 StringGrid1: TStringGrid;

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных