1. Tech

Your suggestion is on its way!

An email with a link to:


was emailed to:

Thanks for sharing About.com with others!

Readers Respond: Your Delphi Programming Challenges

Responses: 10


Do you have a Delphi function that you think should be optimized for speed, size or flexibility? Need some help with refactoring your existing Delphi code? Have trouble implementing efficient algorithms?

What programming challenges you'd like to see? Propose your Delphi programming challenge!

Let others help you: ask Delphi developers to refactor your code or ask for something you do not know how to implement.

Please do not submit "create a program to do [mega-project]". We are looking for small Delphi functions designed to solve some particular problem, implement some particular algorithm.

Par2 Encode Decode

Create routine to encode recovery packets for PAR2 implementation. Create routine to decode and recover missing files.

RE: Algorythm, free surface measurement

This sounds like a classic "rectangle packing problem". But your requirements are not very clear. I think you want to reduce "wasted space" by placing crates as close to each other as possible reducing gaps between them. The total area of enclosing rectangle is known (area of stock room)? The orientation of crates is fixed, or they can be rotated once?
—Guest A. Almeida

On Screen Display

I would really apreciate a OSD component or function similar to this: function _osd(Graphic: TGraphic; Position: TRect; AlphaBlendValue: Byte): Boolean; overload; function _osd(const Text: String; Position: TRect; AlphaBlendValue: Byte): Boolean; overload; Position(TRect) should be used according to 1st parameter(String|Graphic), i.e. -- if i wish to draw a bitmap|jpeg|etc. the all parts of the Position record should be used else only (Top & Left) -- Thank you so much

RE: Extract sub string from main string

the delimiter is always a single char or may be a string? can delimiters be contiguous?
—Guest A. Almeida

Show Explorer File Menu

How to make a List box where all the Items are the Paths to random files on a PC, show the same popup menu on right-click tatis shown when in the Windows Explorer for that file

Algorythm: free surface measurement

Situation: Some crates are randomly positioned in a stockroom. Not stacked. Problem: how to determine the free space between the crates i.e determine as much different surfaces (free of crate ) as possible and maximize the utilization of the available free space ? Condition: the free surfaces should be determined as rectangle, hence 2 points (x,y) allow to position and locate them.
—Guest L.Bégué

Extract sub string from main string

Howto extract sub string from large string as quick as possible? Main string size might be >50mb and data delimited with delimiter for example " " without quotes. There can be thousands of delimiters or just a few. Sub string should be extracted by defining delimiter string and the index of wanted delimited item. For example: ExtractSubString(' first second third fourth',' ',3) should return string "third". Note: performance is essential especially *LARGE* strings with thousands of delimiters. The winner is fastest function which does specified task.

Download Web Page

I would like to be able download ALL the files belonging to a Web Page.
—Guest Bob Stanton

Delphi Folder Observer

How to keep an internal object synchronized with an external folder. When files are inserted or deleted from the folder, the internal list will be updated.
—Guest Anonymous

Assemble bitmap files using Delphi

A big bitmap has been cut into small pieces. All bitmap files have this pattern file name : BmpRxxxCyyy.bmp where xxx is row number (005) and yyy is column number. All bitmaps have same size and are in same folder. The function call could be like this : function GetAssembledBMP(AFolder: string; AMaxRow, AMaxCol: Integer): TBitmap;

Zarko Gajic
About.com Delphi

  1. About.com
  2. Tech
  3. Delphi
  4. Source Code Projects
  5. Challenges / Exercises
  6. Pimp My Delphi Code - Propose a Delphi Programming Challenge

©2015 About.com. All rights reserved.