IT SOLUTIONS
Your full service technology partner! 
-Collapse +Expand
Delphi
Search Delphi Group:

Advanced
-Collapse +Expand Delphi To/From
To/FromCODEGuides
-Collapse +Expand Delphi Store
PRESTWOODSTORE

Prestwood eMagazine

June Edition
Subscribe now! It's Free!
Enter your email:

   ► KBDelphi Knowledge Base  Print This    All Groups  

Pascal and Delphi Coding Tech Articles

These Articles are contributed by you (our online community members). They are organized by our knowledge base topics. Specifically, by the Delphi sub-topics.

Contribute an Article

106 Pascal and Delphi Coding Articles

Group: Pascal and Delphi Coding


Topic: ADO

With the introduction of support for ADO Database access, Borland gave us TADOTable, a quick, easy-to-use component to begin the job of outfitting an existing application with a newer database. But TADOTable is no TTable! It comes with some baggage you can do without.

Posted By Wes Peterson, Post #101676, KB Topic: ADO
  +Add Comment  (1 Comments)




Topic: Advantage Database

Tips and techniques for creating a typical master/detail relationship between Advantage Database Server tables in a Delphi 6 form. This article also includes tips for using client datasets in relationships between ADS tables.
Posted By Scott Wehrly, Post #100080, KB Topic: Advantage Database
  +Add Comment  (2 Comments)




Topic: BDE

This KB Post addresses accessing Paradox tables through the BDE using TDatasource, TTable, and TDBGrid. This tutorial was updated for Delphi 2009 but applies to all versions of Delphi.

Posted By Mike Prestwood, Post #100147, KB Topic: BDE
  +Add Comment

Description of the Borland Database Engine (BDE).
Posted By Mike Prestwood, Post #100159, KB Topic: BDE
  +Add Comment  (2 Comments)

How to join disparate database types, for example Interbase to Paradox tables, using the BDE and SQL.
Posted By mbenemelis, Post #100047, KB Topic: BDE
  +Add Comment

How to read or write data from comma-delimeted or fixed length record text files in Borland Delphi.
Posted By Scott Wehrly, Post #100017, KB Topic: BDE
  +Add Comment  (4 Comments)




Topic: Coding Tasks

The steps for creating an application server with Delphi 2005, steps that were first introduced with Delphi 3.

Posted By Joshua Delahunty, Post #100365, KB Topic: Coding Tasks
  +Add Comment

How often have you started a new Delphi project, then spent some time fleshing out the default main form provided by Delphi?

This task only needs to be done once or twice. Delphi then allows us to re-use this work at the start of each new project.

Source code is included.

Posted By Wes Peterson, Post #101943, KB Topic: Coding Tasks
  +Add Comment

In this first installment of a New Knowledge Base Series I'll discuss The TForm.OnCloseQuery Event which too frequently goes unhandled.

Posted By Wes Peterson, Post #101139, KB Topic: Coding Tasks
  +Add Comment  (4 Comments)

This code snippet shows you how to get your NIC MAC address using Borland Delphi.

Posted By Mike Prestwood, Post #100258, KB Topic: Coding Tasks
  +Add Comment  (4 Comments)

Found a cryptic version of this code on http://www.delphifaq.com/faq/delphi/network/f702.shtml by narayana and re-arranged and adapted it to produce a non-duplicated list of MAC addresses in a re-usable code snippet. I show you how to include this unit in your project and then how to call it to get a list of the MAC addresses. Most importantly, it does not use NetBios and I have tested it on Win7 32- and 64-bit.

Posted By Hannes Bez, Post #102163, KB Topic: Coding Tasks
  +Add Comment  (3 Comments)

Microsoft's various COM technologies allow developers to write programs that can interoperate with other programs.  This is great stuff!

Not surprisingly, Delphi makes it pretty easy to work with OLE, Active-X, OCX, etc.

But there's a nasty surprise awaiting you when you try to do this in a DLL you're creating, possibly even in a different thread of an executable, too.

Here we expose the problem - and the solution.

Posted By Wes Peterson, Post #101997, KB Topic: Coding Tasks
  +Add Comment




Topic: Delphi for Win32

David Intersimone ("David I") of Borland demonstrates the latest versions of the Borland Developer Studio 2006 Product

Posted By Joshua Delahunty, Post #100370, KB Topic: Delphi for Win32
  +Add Comment

When run under Vista, your Delphi programs may respond poorly to presses of the Alt key; some of the components on your forms may disappear. Here is a free component that can help.
Posted By Wes Peterson, Post #100792, KB Topic: Delphi for Win32
  +Add Comment  (5 Comments)

In its IDE, Delphi makes it easy for us to generate correct connection strings for database connections that require them. Unfortunately, Delphi doesnt offer the same convenience at run-time when our customers need it most! This article offers a Prestwood exclusive, TConnectionStringBuilder, a non-visual component you can use in your applications to let your users build a connection string at program startup. You can then store that connection string, for future use, in an INI file or registry key.
Posted By Wes Peterson, Post #100448, KB Topic: Delphi for Win32
  +Add Comment  (3 Comments)

Wouldn't it be cool if InputBox could return types other than string? D7's help certainly says it can, but can it really?
Posted By Wes Peterson, Post #100278, KB Topic: Delphi for Win32
  +Add Comment

Delphi supports both static and dynamic arrays.

Posted By Mike Prestwood, Post #102139, KB Topic: Delphi for Win32
  +Add Comment  (2 Comments)

This article discusses the reasons and methods for encrypting data fields in Delphi.
Posted By Scott Wehrly, Post #100245, KB Topic: Delphi for Win32
  +Add Comment  (1 Comments)

How to add functionality to the existing Windows™ shell.
Posted By Larry J. Rutledge , Post #100189, KB Topic: Delphi for Win32
  +Add Comment

In my application delphi6 . its working fine but while selecting Turn on DEP for all programs an services except those i select. this option in My computer -- Advance option -- choose the tab Data Execution Prevention.
Posted By ermohan_rp, Post #100756, KB Topic: Delphi for Win32
  +Add Comment

Use Windows API GetSystemMetrics with SM_CLEANBOOT parameter to determine how Windows was started.

Posted By Larry J. Rutledge , Post #100928, KB Topic: Delphi for Win32
  +Add Comment

An example of work I did to display a graphic (+ text) in a single column of a DBGrid based on two tables in a Delphi 2006 Application (not limited to later versions of Delphi)

Posted By Joshua Delahunty, Post #100380, KB Topic: Delphi for Win32
  +Add Comment

A "simple" procedure that worked fine in BDE (use a TTable component attached to a table with a numeric primary key field, a string field not in the primary key, and a third field that's filtered on, use the .Locate() call to perform an incremental search on the string field) was failing using TADOTable and SQL Server. This article describes how I worked around the issue.
Posted By Joshua Delahunty, Post #100379, KB Topic: Delphi for Win32
  +Add Comment

I have seen many people trying to find a way to get the real physical MAC adddress. Here is one way that works just fine.
Posted By narayana , Post #100389, KB Topic: Delphi for Win32
  +Add Comment

This article by Kim Berry was first published in the January 2002 Prestwood eMagazine.
Posted By Kim Berry, Post #100045, KB Topic: Delphi for Win32
  +Add Comment

Prestwood enthusiastically switched to Delphi 2005 when it was released. Now we have just as enthusiastically moved away from it. While it has intriguing features that are very hard to live without, the stability issues with Delphi 2005, even with the 3 later maintenance releases applied, make it impossible to recommend for production work. Prestwood software STRONGLY recommends use of either Delphi 7, or Delphi 2006.
Posted By Joshua Delahunty, Post #100360, KB Topic: Delphi for Win32
  +Add Comment

Proper use of dynamically created components that doesn't break the built-in garbage collection scheme.
Posted By Scott Wehrly, Post #100228, KB Topic: Delphi for Win32
  +Add Comment

Find Delphi info at the Rubicon Delphi and C++Builder search page.
Posted By Wes Peterson, Post #100553, KB Topic: Delphi for Win32
  +Add Comment

Some tips for every Delphi project to keep things "clean", "neat", and well maintainable down the road.
Posted By Joshua Delahunty, Post #100378, KB Topic: Delphi for Win32
  +Add Comment  (1 Comments)

How to enable SSL transactions with the Indy HTTP v9 component.

Posted By Kim Berry, Post #100260, KB Topic: Delphi for Win32
  +Add Comment

First in a series
Posted By Joshua Delahunty, Post #100296, KB Topic: Delphi for Win32
  +Add Comment

In 1995 Borland revolutionized the world of software development when they introduced Delphi.

It had the distinction of being the first integrated development environment (IDE) featuring a fully object-oriented language and a blazing-fast compiler that produced highly optimized, native Intel machine code. Programs written in Delphi were among the fastest in existence – and still are.

After all these years, is Delphi still relevant?

You bet it is! (And, in many cases, it is still your best bet.)

Here's why...

Posted By Wes Peterson, Post #102500, KB Topic: Delphi for Win32
  +Add Comment

The online tutorials for these controls use IIS, this post describes the same use with the Cassini web server

Posted By Joshua Delahunty, Post #100371, KB Topic: Delphi for Win32
  +Add Comment

Changes to be made when setting up the BDS Web Example for Delphi 2006 and SQL Server 2005
Posted By Joshua Delahunty, Post #100367, KB Topic: Delphi for Win32
  +Add Comment

Back in the wild and wooly days of C/PM, DOS, and early versions of Windows, we programmers could store our data pretty much anywhere. It might not have been a good idea, but we could get away with it.

Things have changed drastically!!

If your program stores data, you need to know where it belongs, and that varies quite a bit from one version of Windows to others.

Read on to find out where your data belongs.

Posted By Wes Peterson, Post #102504, KB Topic: Delphi for Win32
  +Add Comment

When it comes to creating "CGI" solutions, we have a plethora of tools from which to choose. Pearl and TCL are old standbys. ASP Classic, ASP .NET, and PHP are other viable tools. Why, then, would you want to take the trouble to use Delphi for some of these tasks?
Posted By Wes Peterson, Post #100693, KB Topic: Delphi for Win32
  +Add Comment




Topic: Tool Basics

If you've written any ISAPI DLLs, and tried to debug them, you've learned that it isn't exactly a trivial task. This little code snippet can often eliminate much of the pain.

Posted By Wes Peterson, Post #100681, KB Topic: Tool Basics
  +Add Comment  (1 Comments)

Borland Delphi editor tips and tricks.

Posted By Mike Prestwood, Post #100148, KB Topic: Tool Basics
  +Add Comment

This topic discusses the issues surrounding Delphi forms running on a desktop with large fonts enabled.
Posted By Scott Wehrly, Post #100255, KB Topic: Tool Basics
  +Add Comment  (2 Comments)

You can record a series of keystrokes to be played back for quick changes in code. Use Ctrl+Shift + R to begin recording, Ctrl+Shift+R again to stop the recording, then Ctrl+Shift+P to play recording.

Posted By Daniel Kram, Post #101686, KB Topic: Tool Basics
  +Add Comment  (1 Comments)




Topic: Language Basics

This primer is intended for those just getting started in Delphi and focuses on displaying things.

Posted By Mike Prestwood, Post #100883, KB Topic: Language Basics
  +Add Comment  (1 Comments)

Create a classic "Hello, World" Windows native code Console App using Delphi. This tutorial is based on Borland Developer Suite 2006 but you can use any version of Delphi you wish. In this tutorial, you will create a classic "Hello, World!" windows console application. A console application is a type of Windows application that has FULL access to the Win32 API, but it's GUI is limited to a DOS-like text window. When Windows starts a console application, it creates a text-mode console window where the program can display text and the user can interact with the program via the keyboard.

Posted By Mike Prestwood, Post #101326, KB Topic: Language Basics
  +Add Comment  (1 Comments)

Create a classic "Hello, World" Windows native code application using Delphi. This tutorial is based on Borland Developer Suite 2006 but you can use any version of Delphi you wish.
Posted By Mike Prestwood, Post #101214, KB Topic: Language Basics
  +Add Comment

Object Pascal is generally not case sensitive.

Posted By Mike Prestwood, Post #101340, KB Topic: Language Basics
  +Add Comment  (1 Comments)

Delphi uses // for a single line comment and both {} and (**) for multiple line comments. Although you can nest different types of multiple line comments, it is recommended that you don't. A special comment. Delphi compiler directives are in the form of {$DIRECTIVE}. Of interest for comments is using the $IFDEF compiler directive to remark out code.

Posted By Mike Prestwood, Post #101505, KB Topic: Language Basics
  +Add Comment  (4 Comments)

In Delphi, you define constants similar to how you define variables but use the Const keyword instead of the Var keyword. Declare global constants in a unit's interface section and unit constants (scope limited to unit) in the implementation section. Declare local constants above the begin..end block.

Posted By Mike Prestwood, Post #101712, KB Topic: Language Basics
  +Add Comment

Common source code file extensions include:

  • .BDSPROJ - Project, Borland Developer Studio project file holds compiler options, etc. This is the file you open.
  • .DCU - Delphi Compiled Unit file.
  • .DFM - Delphi Win32 form file (a text resource file).
  • .DPR - Delphi project file. Primary project "source" file.
  • .PAS - Delphi unit source file.
Posted By Mike Prestwood, Post #101353, KB Topic: Language Basics
  +Add Comment

Object Pascal allows parameters of the same type to be listed together, separated by commas, and followed with a single data type (more params of different data types can follow, after a semi-colon). The default for parameters is by value. For by reference, add var in front of the parameter. Object Pascal also offers constant parameters where you add const in front of the parameter. A constant parameter is like a local constant or read-only parameter the compiler can optimize. You cannot assign a value to a constant parameter, nor can you pass one as a var parameter to another routine.

Posted By Mike Prestwood, Post #101627, KB Topic: Language Basics
  +Add Comment

Rave Reports comes closest to a Delphi standard now but historically there has been no real standard in Delphi development. Do-it-yourself developers sometimes like to use TPrinter for very simple reports. ReportSmith was bundled with the first few versions of Delphi.

Delphi has offered many embedded VCL component report options. Quick Reports has been a part of Delphi since Delphi 2.0 and has been the default report writer for many Delphi developers. Ace Reporter, ReportBuilder and Rave Reports are also very popular. During the time of Kylix, FastReports was popular because of it's cross-platform nature.

Posted By Mike Prestwood, Post #101652, KB Topic: Language Basics
  +Add Comment  (2 Comments)

Declare global variables in the interface section of a unit, variables declared within the implementation section (but not within a method) have a scope limited to the unit. You declare local variables in a var block outside (above) your begin..end code block. You cannot declare variables in-line (inside begin..end). You can initialize global and unit variables but you cannot initialize local variables. Delphi offers many variable types. Some common variable types include String, WideString, PCharInteger, Boolean, Single, Double, Pointer, and Variant.

Posted By Mike Prestwood, Post #101567, KB Topic: Language Basics
  +Add Comment

We developers sometimes get "on a roll." We know exactly what we need to do, and the code just flies off our fingertips. Later, though, we find ourselves in trouble...
Posted By Wes Peterson, Post #100556, KB Topic: Language Basics
  +Add Comment




Topic: Language Details

When you want the exception to be the rule. A technique for handling exceptions in Borland Delphi's Object Pascal.

Posted By Mike Prestwood, Post #100087, KB Topic: Language Details
  +Add Comment

53. Arrays
Arrays in Object Pascal.
Posted By Mike Prestwood, Post #100158, KB Topic: Language Details
  +Add Comment

Correctly implementing COM collections.

Posted By William Pantoja, Post #101118, KB Topic: Language Details
  +Add Comment

This lesson shows you how to create and use several different types of arrays in Object Pascal.
Posted By Mike Prestwood, Post #100003, KB Topic: Language Details
  +Add Comment

Common comparison operators:

= equal
<> not equal
< less than
> greater than
<= less than or equal
>= greater than or equal

Posted By Mike Prestwood, Post #101809, KB Topic: Language Details
  +Add Comment

Object Pascal

  • Operator - Yes. But not Pascal.
  • Method - Yes.  
Posted By Mike Prestwood, Post #101463, KB Topic: Language Details
  +Add Comment

Using Pascal and PChar strings in Delphi.
Posted By Mike Prestwood, Post #100160, KB Topic: Language Details
  +Add Comment  (1 Comments)

59. Records
Using record data types in Delphi.
Posted By Mike Prestwood, Post #100162, KB Topic: Language Details
  +Add Comment

Using case statements in Delphi.
Posted By Mike Prestwood, Post #100132, KB Topic: Language Details
  +Add Comment  (1 Comments)

InputBox allows you to set a value, display it to the user, and have the user change it. Although InputBox generally isn’t flashy enough for finished applications, it is great for debugging and smaller “in-house” applications.
Posted By Mike Prestwood, Post #100007, KB Topic: Language Details
  +Add Comment

MessageBox is similar to ShowMessage but gives you more control over how it displays. This one is a favorite of developers because it is a Windows API function wrapped in a Delphi method. This is important because many Windows development languages support the MessageBox function.
Posted By Mike Prestwood, Post #100006, KB Topic: Language Details
  +Add Comment  (7 Comments)

How to use Delphi's two varieties of string variables: Pascal strings and PChar strings.
Posted By Mike Prestwood, Post #100131, KB Topic: Language Details
  +Add Comment

How to use records in Delphi.
Posted By Mike Prestwood, Post #100130, KB Topic: Language Details
  +Add Comment  (2 Comments)

Use SetWindowLong to hide your application.
Posted By Mike Prestwood, Post #100068, KB Topic: Language Details
  +Add Comment

ShowMessage displays a simple dialog box with the text you provide it. It is one of the most used ways of displaying information.
Posted By Mike Prestwood, Post #100005, KB Topic: Language Details
  +Add Comment

Simple example of using the carrot operand.
Posted By Mike Prestwood, Post #100161, KB Topic: Language Details
  +Add Comment

The StatusBar component allows you to write text to the status bar. This is one of the most common ways to display information to a user without stopping their work.
Posted By Mike Prestwood, Post #100008, KB Topic: Language Details
  +Add Comment




Topic: OOP

Beginners example of creating and using a class. Early versions of Delphi use the standard OO private, protected, and public visibility specifiers plus add published for RTTI info. Later versions of Delphi add strict private and strict protected for a true OO implementation.

Posted By Mike Prestwood, Post #100889, KB Topic: OOP
  +Add Comment

Delphi for Win32 supports abstract class members using the abstract keyword. You can even instantiate instances of a class that contains abstract members. Then you override each abstract member in a descendant class with Override. Delphi does not support setting an entire class as abstract. You can create an abstract class (a class with one or more abstract methods), but there is no way to tell the compiler to not allow the instantiation of the abstract class. Delphi does not support abstract member properties directly. To implement an abstract properity, make use of abstract methods. That is, you can read a GetPropertyX abstract function and write to a SetPropertyX abstract procedure. In effect, creating  an abstract property.

Posted By Mike Prestwood, Post #101346, KB Topic: OOP
  +Add Comment  (3 Comments)

In Delphi programming language (Object Pascal), all classes ultimately inherit from the base class TObject.

Posted By Mike Prestwood, Post #101411, KB Topic: OOP
  +Add Comment

Delphi allows you to extend an existing class without using inheritance. Buggy in 2005 and not officially supported but stable and usable in 2006 and above. You declare a class helper similiar to how you declare a class but use the keywords class helper for.

  • You can name a helper anything.
  • Helpers have access only to public members of the class.
  • You cannot create an object instance directly from a class helper.
  • self refers to the class being helped.
Posted By Mike Prestwood, Post #101869, KB Topic: OOP
  +Add Comment

Declare your class in the Interface section. Then implement the class in the Implementation section.

Posted By Mike Prestwood, Post #101403, KB Topic: OOP
  +Add Comment  (2 Comments)

In Delphi, use the constructor keyword to signify which method or methods are constructors for a class. It is traditional but not required to use a procedure called Create.

In addition to having multiple named constructors, you can overload constructors.

Posted By Mike Prestwood, Post #101488, KB Topic: OOP
  +Add Comment

In Delphi, you use the class keyword followed by the parent class in parens. If you leave out the parent class, your class inherits from TObject.

Posted By Mike Prestwood, Post #101394, KB Topic: OOP
  +Add Comment

You specify an interface in the type block just like you do for a class but you use the interface keywoard instead of the class keyword and in the interfaces section only. Since interfaces, by definition, do not have any implementation details, all you do is specifiy it in the type block.

Posted By Mike Prestwood, Post #101439, KB Topic: OOP
  +Add Comment

Specify Delphi member modifiers as follows:

reintroduce; overload; [binding modifier]; [calling convention]; abstract; [warning]

The binding modifiers are virtual, dynamic, or override. The calling conventions are register, pascal, cdecl, stdcall, or safecall. The warnings are platform, deprecated, or library. Additional directives include reintroduce, abstract, class, static, overload, and message.

Posted By Mike Prestwood, Post #101752, KB Topic: OOP
  +Add Comment

Up until D2005, private and protected were not implemented strictly. Starting with D2005, a traditional strict versions of OOP are supported using the strict keyword. OO purist will want you to use strict private over private and strict protected over protected. I suggest you follow that advice until you both fully understand the differences and have a specific need. Delphi offers a special published specifier which is the same as public members but runtime type information (RTTI) is generated.

Posted By Mike Prestwood, Post #101490, KB Topic: OOP
  +Add Comment

In Delphi, you specify a virtual method with the virtual keyword in a parent class and replace it in a descendant class using the override keyword. Call Inherited in the descendant method to execute the code in the parent method.

Posted By Mike Prestwood, Post #101945, KB Topic: OOP
  +Add Comment  (2 Comments)




Topic: Using Data

Late versions of Windows - and late processors - include a feature called Date Execution Prevention, or DEP. Programs written in Delphi 7 can trigger DEP errors because of a bug in the SysUtils unit. This article describes an unofficial fix.
Posted By Wes Peterson, Post #100651, KB Topic: Using Data
  +Add Comment  (1 Comments)

DBISAM is a fantastic database for Delphi (or C++ Builder) projects. Don't let the name fool you: This database has great SQL support. Among its many features are the flexibility offered by its database maintenance routines.
Posted By Wes Peterson, Post #100728, KB Topic: Using Data
  +Add Comment  (3 Comments)

Be careful who you associate with!
Posted By Mike Prestwood, Post #100088, KB Topic: Using Data
  +Add Comment

Implement static member data in Delphi with variables declared in the implementation section (unit scope). Increment and decrement variable in constructor and destructor. Then use a class function to surface the variable's value publicly.
Posted By Mike Prestwood, Post #101713, KB Topic: Using Data
  +Add Comment

This article by Kim Berry was first published in the July 2001 Prestwood eMagazine.
Posted By Kim Berry, Post #100046, KB Topic: Using Data
  +Add Comment  (1 Comments)

The world of electronics is a fascinating place. Thousands of devices are available as tiny integrated circuits that can do truly amazing things. Some depend upon an external input to "program" them - or change their outputs. Here we explore one interesting aspect of dealing with these gadgets, some fast, low-level math routines that deal in unusual numbers of bits.
Posted By Wes Peterson, Post #100933, KB Topic: Using Data
  +Add Comment

Windows XP incorporates a "theme manager," and includes a newer version of comctl32.dll. Together, they help produce the unique XP Look. Later versions of Delphi are equipped to take advangage of this. But what if you have to maintain a Delph 5 application, and would like to spruce it up to look like a real XP program?

Posted By Wes Peterson, Post #100641, KB Topic: Using Data
  +Add Comment

Heterogeneous Joins in Delphi: by Mike Benemelis. A heterogeneous join is when you join tables from two different SQL servers (or a server and a local table) within the same query. This short article will show you how to perform such queries using Delphi.
Posted By Mike Prestwood, Post #100009, KB Topic: Using Data
  +Add Comment

A basic Delphi source to HTML component.

Posted By Larry J. Rutledge , Post #100089, KB Topic: Using Data
  +Add Comment

I needed a way to show a hierarchical structure. What most were saying, was the, Modified Preorder Tree Traversal Algorithm, was a preferred way of doing hierarchical sets. I thought I would share the code with you.
Posted By Daniel Kram, Post #101684, KB Topic: Using Data
  +Add Comment  (2 Comments)

How to reindex and pack Paradox and dBASE tables.
Posted By Mike Prestwood, Post #100129, KB Topic: Using Data
  +Add Comment

The default setting in Windows Explorer is to always hide known file extensions. This Delphi code shows you how to programatically set your own extension to always show in Explorer.
Posted By Scott Wehrly, Post #100217, KB Topic: Using Data
  +Add Comment  (1 Comments)

SetSystemTime Example
Posted By Mike Prestwood, Post #100884, KB Topic: Using Data
  +Add Comment  (2 Comments)

This example shows how to update a large number of components having the same type and similar characteristics.
Posted By Scott Wehrly, Post #100032, KB Topic: Using Data
  +Add Comment  (1 Comments)

On January 1, 2007, merchants using the UPS shipping API began experiencing a serious problem. Prestwood has found the solution.
Posted By Wes Peterson, Post #100437, KB Topic: Using Data
  +Add Comment

Using DotNet DLLs in Win32 and using Win32 DLLs in DotNet. When. Why. How.
Posted By Mike Prestwood, Post #100396, KB Topic: Using Data
  +Add Comment

Memory Management and Delphi
Posted By Mike Prestwood, Post #100885, KB Topic: Using Data
  +Add Comment  (2 Comments)

The Database Desktop IS Paradox. It's just a stripped down version. The SQL editor in the Database Desktop (and in Paradox) allows you to execute one SQL statement at a time.
Posted By Mike Prestwood, Post #100029, KB Topic: Using Data
  +Add Comment

With TDataSet.Filter, use square brackets for fields with odd characters like spaces and slashes.
Posted By Mike Prestwood, Post #100236, KB Topic: Using Data
  +Add Comment

Set of components for creating advanced user interface in different styles (XP-style, ICQ-style and other...). Windows platforms independed. You can use this package with Delphi 3-7.
Posted By rhoStyle , Post #100267, KB Topic: Using Data
  +Add Comment  (3 Comments)




Topic: Using Controls

To resize the list box of a combobox, you merely need to send the Windows API message: CB_SETDROPPEDWIDTH to the combo box.

Posted By Larry J. Rutledge , Post #101673, KB Topic: Using Controls
  +Add Comment  (2 Comments)

Windows sends the WM_GETMINMAXINFO message when the user tries to resize a window either by clicking the maximize button or dragging the borders of the window. By creating a suitable message-response method, you can specify the minimum and maximum window sizes for that form.

Posted By Larry J. Rutledge , Post #101672, KB Topic: Using Controls
  +Add Comment

Delphi's TDBGrid is an incredibly useful component; one you'd expect to find in any professional development tool.

One of it's handy behaviors is that users can click in column headers and drag to rearrange column ordering to their liking.

Unfortunately, TDBGrid doesn't offer the developer any really easy way to rearrange grid columns from code. This is inconvenient because you might offer the user a choice of various columns upon which they can search, and it would be nice to make their chosen column the leftmost - at least. Often it makes sense to rearrange other columns as well.

This little class allows you to do that.

It has no exposed methods, and only two properties, so it's incredibly easy to use.

Read on to learn how it works and to get the code.

Posted By Wes Peterson, Post #102495, KB Topic: Using Controls
  +Add Comment

To determine the total number of columns in a String Grid, refer to its ColCount property and for the total number of rows, refer to RowCount. Determing the currently selected cell is a simple matter of referring to the Col and Row properties.
Posted By Mike Prestwood, Post #100886, KB Topic: Using Controls
  +Add Comment  (2 Comments)

Windows 95 adds several visual elements and actions that enhance the user's perception of how the system operates (editor's note: This also applies to Windows 98 and NT 4.0). One such enhancement is window zoom animation, which displays an animated, shrinking window that disappears into the window's icon on the Taskbar when you minimize the application. However, if you've run a Delphi 2.0 (editor's note: This applies to Delphi 3 and 4 as well) application on a Windows 95 system, you may have noticed that instead of seeing the standard zoom animation, the window simply disappears. In this article, we'll explain why this happens and how you can work around this disappearing act to enable zoom animation for your Delphi 2.0 applications.
Posted By Larry J. Rutledge , Post #101670, KB Topic: Using Controls
  +Add Comment




Topic: Prestwood Delphi Gazette Archive

Our Delphi Gazette ran for a vew years in the late 90s. This page archives 1998.

Posted By Mike Prestwood, Post #102272, KB Topic: Prestwood Delphi Gazette Archive
  +Add Comment

Prestwood Delphi Gazette Archive
Posted By Larry J. Rutledge , Post #101674, KB Topic: Prestwood Delphi Gazette Archive
  +Add Comment

-
   Contact Us!
 
Have a question? Need our services? Contact us now.
--Mike Prestwood

Call: 916-726-5675

email: info@prestwood.com


Go ahead!   Use Us! Call: 916-726-5675 


©1995-2017 Prestwood IT Solutions.   [Security & Privacy]