Written by:

Peter Szarvas

Budapest, Hungary





Beta, DEMO version 1.0

Some of the panels have just Hungarian labels in this demo version because of the short time. The full version with the source code will be available in English also. I hope you can easily try the component on the basis of this short description.

This demo shows the advantages of using P-Controls (PDEMO.EXE).


Installation Notes

Delphi 3, Delphi 4

After unpacking the PCONTROLS.ZIP do the following:


License, Ordering Informations

You can distribute this Beta Demo freely. The full version will be available after 30. 02. 1999. The full version contains the source code, help in English, English labels and other new properties.

Price of the full version: 55$ without source code

with source : 70$.

If you are interested in this component, write me an E-mail. The more mails I get, the sooner the component will be available.



The component collection contains the following elements:



You can easily filter, sort, search, print in the database using this component.

To create a normal database form, just do the following:

That’s all!


You can filter the database by any kind of view, with the aid of an intermediate panel where you can sort as you want ( just drag and drop the fields from the list on the left to the right, and the filtered database will be sorted by this list ), you can see the SQL under construction ( you can write in it, if the SQLMonitor property is enabled ). The filter panel contains the appropriate element of the field ( EditBox, ComboBox, DateTimePicker, SpinEdit, CheckBox ). You can easily set the filtering condition with these elements, you can switch on / off the filtering process of the specified elements, just click on the button in the panel. You can search for dates and numbers in the specified interval. You can use wildcards ( Sm?th or Brown* ) and boolean operators for searching in the text fields. You can't modify the sorted or filtered table, unless you switch off the filter or sort method.


You can easily sort the selected columns in the Navigator, just click on the heading of the appropriate grid or the ABC button.

The Navigator examines if the column has an index. If it has one, the Navigator sorts the table according to this. Otherwise, it tries to generate the index. If it fails the Navigator generates the SQL according to the columns of the table and sorts the data. It automatically generates SQL on the LookUp fields and sorts the table data.


You can search in the sorted columns, just click on the magnifier icon. 2 CheckBoxes appear, one for setting the case sensitive property, on the other you can choose to jump on the field during typing or after entering the whole expression.


It's easy to print the table ( this is also available in filtered and sorted tables ) calling the PrintData procedure or clicking on the printer icon in the Navigator. The program automatically sets column width according to the longest field, so it produces optimal printing. It sends the data directly to the printer, so no external printing tool is needed ( e.g. QuickReport ). If the header is too long, you can set breaking the content in rows ( TitleWordWrap:=True ). You can set summing the numbers in the end of the list ( PDBNav1.GridFields[5].PrintSum:=True ). According to the GridFields property the adjusted fields will be printed out. You can also set other print properties by columns. The PrintOptions type handles the printing options. If this type is enabled, a new panel pops up before the printing. This allows you to:

Clicking on the OK button the printing process starts.

Other properties:

Short description of properties and methods:



The properties of this component are the same as the PDBNavigator. You can connect together this and the DBGrid of the InfoPower.



This is a 4 status button:

1. Normal

2. Disabled

3. Activated

4. Focused

You can design several BitButtons with a graphical program.

Put the buttons beside each other, creating a wide picture. The component cuts out the elements from this picture. The component has a Transparent property. This component originates from TGraphicControl class and I had to program the responses for the keys. The TabOrder and TabStop concern on TPButtons.

Setting CaptionGlyph to True the caption will appear in the middle of the button, even if it has a picture. If this is False it is similar to the TSpeedButton.

You can set the caption font in the focused and pushed status ( FontDown, FontMouse ).

Using the ButtonType property you can import buttons from a .RES file. ( There is no picture to import in this version. )



This is a calculator to evaluate expressions. You can use brackets, Sin, Cos, etc. It has 3 memories and you can store the values here, just drag and drop the result.

The results appear immediately.

You can type in e.g. 156+(SIN(15)+54*2+(458-MOD(45;3))+EXP(15)).

Use the Show method to show the calculator.



When the mouse is over a picture the program zooms in according to the ZoomPos parameter. You can use JPEG, BMP, ICO format. Set Bevels for creating frames around the picture.

DataSource and DataField are available in the full version. If DataChange occurs the component shows the picture in the appropriate path.



This component has the same properties as TRichEdit, but you can get and set the cursor position ( GetX, GetY, SetX, SetY ).

If you choose a Label or a StatusBar, this shows the position immediately.


Write your letter to one these addresses:

Peter Szarvas