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

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

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

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

Докачка файлов по сети (NetBios)

Советы » Файлы и Интернет » Докачка файлов по сети (NetBios)

Мне вот все интересно было...думал проги, которые файлы по сети докачивают как-то хитро с нетбиосом работают...И вот решил попробовать написать нечто подобное...Токо похоже все они ( проги ) про нетбиос и слыхом не слыхивали...нашел простейшее решение этой проблемы... Код некрасивый, потому как писал чисто для проверки...более того, тут надо переписать его весь, но общий смысл должен быть понятен...я разочарован :((

procedure

TForm1.Button1Click(Sender: TObject); var

Stream, Stream1: TFileStream; Temp: array

[0..$FFFF] of

Byte; Access: Integer; FileNames, Filenames1: string

; begin

with

TOpenDialog.Create(Form1) do

begin

Execute; FileNames := FileName; Free; end

; if

Filenames = '' then

Exit; with

TSaveDialog.Create(Form1) do

begin

Execute; FileNames1 := FileName; Free; end

; if

Filenames1 = '' then

Exit; Access := fmOpenReadWrite; ZeroMemory(@Temp, sizeof(Temp)); Stream := TFileStream.Create(FileNames, fmOpenRead); if

not

FileExists(Filenames1) then

Access := fmCreate; Stream1 := TFileStream.Create(Filenames1, Access); Gauge1.MaxValue := Stream.Size; Stream.Position := Stream1.Size; Stream1.Position := Stream1.Size; Label1.Caption := IntToStr(Stream1.Position); Label2.Caption := IntToStr(Stream.Size); Gauge1.Progress := Stream.Position; while

Stream.Size <> Stream1.Size do

begin

if

(Stream.Size - Stream1.Position) < sizeof(Temp) then

begin

Stream1.CopyFrom(Stream, Stream.Size - Stream1.Position); end

else

Stream1.CopyFrom(Stream, sizeof(Temp)); Gauge1.Progress := Stream.Position; Label1.Caption := IntToStr(Stream.Position); Label2.Caption := IntToStr(Stream.Size); Form1.Update; Application.ProcessMessages; end

; Stream.Free; Stream1.Free; end

;

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

Категории

Статьи

Советы

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