delphivcl.ListBox
displays a collection of items in a scrollable list. We use ListBox
to display a scrollable list of items that users can select, add, or delete. ListBox
is a wrapper for the Windows listbox control.
We can browse all the properties, methods, and built-in properties of the delphivcl.ListBox
using dir()
command:
1 2 3 |
import delphivcl dir(delphivcl.ListBox) |
See the responses in command prompt:
Here is the working example of the implementation of delphivcl.ListBox
:
1 2 3 4 5 6 7 8 |
# List box creation lboxCountry = ListBox(pgOne) lboxCountry.SetProps(Parent=pgOne) lboxCountry.SetBounds(145,88,121,60) lboxCountry.Items.Add('RUSSIA') lboxCountry.Items.Add('USA') lboxCountry.Items.Add('INDIA') lboxCountry.Items.Add('AUSTRALIA') |
To see the result, let’s run the complete script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
from delphivcl import * # Create a Class to build a basic Form class MainForm(Form): def __init__(self, Owner): self.Caption = "Introduction to VCL Components" self.Name = "BaseForm" self.SetBounds(10, 10, 500, 450) # Create a Main Panel component pnlMain = CreateComponent('TPanel',Owner) pnlMain.SetProps(Parent=self, Caption="",align = "alClient", Name = "MainPanel") # Page control creation pgConMain = PageControl(pnlMain) pgConMain.Name = "MyPageControl" pgConMain.Parent = pnlMain pgConMain.Align = "alClient" # Tabsheet one pgOne = TabSheet(pnlMain) pgOne.PageControl = pgConMain pgOne.Caption = "Tab 1" # Tabsheet two pgTwo = TabSheet(pnlMain) pgTwo.PageControl = pgConMain pgTwo.Caption = "Tab 2" # Label Creation lblHello = CreateComponent('TLabel',pgOne) lblHello.Parent = pgOne lblHello.Caption = 'FirstName' lblHello.Name = 'Name' # Set the positions lblHello.Left = 20 lblHello.Top = 14 lblHello.Width = 121 lblHello.Height = 30 # Edit box creation edtHello = CreateComponent('TEdit',pgOne) edtHello.Parent = pgOne edtHello.Text = 'Arthur' edtHello.Name = 'edtFirstName' # Set the positions and dimensions edtHello.Left = 145 edtHello.Top = 14 edtHello.Width = 121 edtHello.Height = 30 # Check box creation chkSingle = CheckBox(self) chkSingle.Parent = pgOne chkSingle.Caption = 'Single ?' chkSingle.Alignment = 'taLeftJustify' chkSingle.SetBounds(20, 44, 141, 30) # label creation lblCountry = CreateComponent('TLabel',pgOne) lblCountry.SetProps(Parent=pgOne,Caption='Country') lblCountry.SetBounds(20,88,121,30) # List box creation lboxCountry = ListBox(pgOne) lboxCountry.SetProps(Parent=pgOne) lboxCountry.SetBounds(145,88,121,60) lboxCountry.Items.Add('RUSSIA') lboxCountry.Items.Add('USA') lboxCountry.Items.Add('INDIA') lboxCountry.Items.Add('AUSTRALIA') # Initialize your application def main(): Application.Initialize() Application.Title = "MyDelphiApp" f = MainForm(Application) f.Show() FreeConsole() Application.Run() Application.Destroy() main() |
The result:
Table of Contents
Note for beta release users
In practice, the only difference between DelphiVCL4Python release version and the beta version is only in how you write the DelphiVCL. Here is the example for how you import the library:
- Release version:
1 |
from delphivcl import * |
- Beta version:
1 |
from DelphiVCL import * |
Watch this comprehensive introduction to Python GUI Development with DelphiVCL library video by Jim McKeeth:
Also, watch the following webinar by Alexey Sharagin to Master the Secrets of Beautiful Modern Windows Apps:
Check out DelphiVCL which easily allows you to build GUIs for Windows using Python.
Check out Python4Delphi which easily allows you to build Python GUIs for Windows using Delphi.
References & further readings
[1] Embarcadero DocWiki. (2015).
Vcl.StdCtrls.TListBox
. Embarcadero DocWiki. Embarcadero Technologies. docwiki.embarcadero.com/Libraries/Sydney/en/Vcl.StdCtrls.TListBox