Difference between revisions of "Portal:HowTo Demos"

From Lazarus wiki
Jump to navigationJump to search
(→‎User Interface: Added CHM help demo)
(→‎Graphics: Display image in console program (Win only))
Line 120: Line 120:
 
* [https://forum.lazarus.freepascal.org/index.php/topic,49314.msg357420.html#msg357420 Remove image shadow]. How to remove an image shadow and crop the image.
 
* [https://forum.lazarus.freepascal.org/index.php/topic,49314.msg357420.html#msg357420 Remove image shadow]. How to remove an image shadow and crop the image.
  
 +
* [https://forum.lazarus.freepascal.org/index.php/topic,49583.msg359879.html#msg359879 Display image in console program]. How to display an image in a console program (Windows API method).
  
 
== Networking ==
 
== Networking ==

Revision as of 01:32, 30 April 2020

English (en)

< Lookup < Portals < Portal:HowTo Demos
Portal:HowTo Demos
HowToLogo.png

This portal collects together in one place a significant number of short demonstration programs that have been posted on the Free Pascal and Lazarus Forums. Each of the demonstration programs generally provides a simple example of one particular development technique.

The Portal was the brainchild of Handoko who also provided the initial list of demonstration programs from the Forums.

Android

  • OpenGL ES2 Circle. Requirement: LAMW. Drawing a circle using jCanvasES2.DrawLine instead of DrawCircle.
  • OpenGL ES2 Rectangle. Requirement: LAMW. Drawing a rectangle using jCanvasES2.DrawPolyFill instead of DrawRect.


File handling


General

  • Generating a huge text file. Demonstrates a technique for reducing program responsiveness to improve performance.


Graphics

  • Get pixel color of an image. It may sound easy but actually it is not so easy.
  • Fading images using BGRABitmap. Requirement: BGRABitmap. Build your own slideshow and learn doing proportional scaling using aspect ratio of the picture.
  • TCanvas Text. How to draw superscript and subscript text using TCanvas.
  • Rock, Paper, Scissors. A simple game. Note for Unix/like operating systems: change the path delimiter to make the code work.

Networking

  • FTP Connect. Requirement: Synapse (can be installed using OPM). How to connect to a FTP server.
  • HTML to Text. Requirement: fasthtmlparser. Extract data from a web page.


User Interface

  • Searchable StringGrid. Requirement: DBFLaz. Load data from a dbf, show it on a TStringGrid, search and highlight the cells. See here and here.
  • a Form. Requirement: BGRAControls. How to darken the Main Form when a modal window is shown.
  • Scaling a Form. How to scale a form by using TForm.ScaleBy. Unfortunately it does not work correctly on Linux.
  • Vertical Menu. How to make a vertical menu using TPanel and TScrollBox.
  • ShowMessage in Console Mode. Requirement: LCL needed to be in the project’s required packages. How to use ShowMessage in a console mode program.
  • Adding CHM Help. A demo project to call a CHM help file from three buttons as context-sensitive help (press F1), or from a help menu.