Как сделать калькулятор в Delphi?

Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.

Как Delphi реализует многоплатформенную разработку?

Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...

Определяет наличие СОМ портов

Советы » Порты » Определяет наличие СОМ портов

{ **** UBPFD *********** by delphibase.endimus.com ****
>> Определяет наличие СОМ портов

Данная процедура позволяет определить наличие доступных СОМ-портов.
Список добавлятся в ComboBox. После этого можно выбирать нужный порт.

Зависимости: Windows, Messages, SysUtils, Variants, Classes,
Graphics, Controls, Forms, Dialogs, ComCtrls

Автор:       Михаил, mikhail.sazonov@niitp.ru, Москва
Copyright:   Сазонов Михаил
Дата:        2 октября 2003 г.
***************************************************** }

unit

SetComPort; interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, dfsStatusBar, ExtCtrls, StdCtrls, ImgList, Buttons, ToolWin; type

TForm1 = class

(TForm) StrNP: TRichEdit; dfsStatusBar1: TdfsStatusBar; ImageList1: TImageList; CoolBar1: TCoolBar; Panel1: TPanel; LoadNP: TBitBtn; Auto: TCheckBox; SetRegim: TRadioGroup; GroupBox1: TGroupBox; ComPort: TComboBox; BaudRate: TComboBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Parity: TComboBox; ByteSize: TComboBox; StopBits: TComboBox; CloseItem: TBitBtn; procedure

InquiryPort(Sender: TObject); {опрос существующих портов} procedure

FormCreate(Sender: TObject); procedure

FormClose(Sender: TObject; var

Action: TCloseAction); procedure

CloseItemClick(Sender: TObject); procedure

ComPortChange(Sender: TObject); procedure

BaudRateChange(Sender: TObject); procedure

ParityChange(Sender: TObject); procedure

ByteSizeChange(Sender: TObject); procedure

StopBitsChange(Sender: TObject); procedure

SetRegimClick(Sender: TObject); private

{ Private declarations } public

{ Public declarations } FHandl: THandle; {дескриптор порта} DCB: TDCB; {ссылка на структуру настройки порта} PortName: string

; {имя порта, для дальнейшей работы} end

; var

Form1: TForm1; implementation

{$R *.dfm} procedure

TForm1.InquiryPort(Sender: TObject); var

i: integer; begin

{опрос существующих портов} for

i := 0 to

31 do

{цикл опроса} begin

{пробуем получить дескриптор порта} FHandl := CreateFile(PChar('COM' + IntToStr(i + 1)), GENERIC_READ or

GENERIC_WRITE, 0, nil

, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, 0); if

FHandl <> INVALID_HANDLE_VALUE then

{если порт есть то добавить в список} ComPort.Items.Add('COM' + IntToStr(i + 1)); CloseHandle(FHandl); {закрыть дескриптор} end

; end

; ..........

Другое по теме:

Категории

Статьи

Советы

Copyright © 2024 - All Rights Reserved - www.delphirus.com