Introduction          Home

With the huge popularity of digital cameras and scanners, many people who are not Windows programming gurus are wanting to get the most out of their equipment, but lack the tools to do this. The PiXCL language is an easy-to-learn programming language that offers substantial flexibility and processing power, without the complexity (and some would say for new users, obscurity) of the object oriented approach that comes in C++ or the .NET languages.

Who should read this tutorial:

If you are new to Windows programming, then PiXCL is an effective introduction to Windows programming and terminology, particularly dialog boxes and mouse actions.

If you first learned to program one the so-called 'legacy' languages like FORTRAN, Pascal or BASIC, then you will find the structured programming approach familiar.

If you have no programming experience, then you will have to work a bit harder to get the basics of the programming style presented here. We recommend looking carefully at the examples, use the code writing Helper Apps, and to make use of the free tech support offered for all versions of PiXCL via email at support@pixcl.com.

What do you need to be able to use this tutorial?

You need to have downloaded and installed PiXCL 10.

Your PC requires Windows 7 or later. We no longer support PiXCL on Windows XP, Vista or Windows 8.

Preliminary Reading:

We strongly suggest that you first read the Overview topic in the main PiXCL Help file, as this will describe the general range of commands and functionality. We also recommend reading the Help file for the PiXCL Code Studio.

What does this tutorial present?

In a series of learning exercises, we will run through the development of an image acquisition and display engine application, with all the standard Windows user interface functions, including menus, toolbars, floating toolbars, mouse actions and help. Much of the functionality of the PiXCL language is demonstrated in the sequential chapters, and the source code for each chapter is provided so you can see what is required as you go. You can start with the example code from the preceding chapter, and modify it as you work through the examples.

The content of the chapters is as follows:

Chapter 1: The PiXCL Code Studio and Helper Apps #1 and #2; creating the basic application skeleton with Helper App#2; displaying small images in the client area; resizing the application; simple menus (fixed text); menus with child menus; menus with dynamic text.

Chapter 2: Adding bitmap window support; manual roam and zoom with scrollbars; saving image files to different formats; multiple bitmap windows, zooming and roaming under program control; printing files.

Chapter 3: Adding basic image processing commands; toolwindows; complex menus; advanced image processing; histograms and image statistics; histogram cumulative and non-cumulative mode.

Chapter 4: Image acquisition using TWAIN; UI-on and UI-off modes; investigating your scanner or digital camera data source; acquiring video sequences. Using Microsoft WIA device access and printing commands.

Chapter 5: Still Image issues - what IS this?; Files, device interaction; Control Panel Applets; Registry entries.

Chapter 6: Registry settings for window position and other parameters; Last Used files list; Printing files revisited - colour management issues and ICM.

Chapter 7: Editing images - writing into images.

Chapter 8: adding Help files with HLP or CHM; accessing other application Help files; HTML help popups.

Chapter 9: Using PiXCL advanced extensions for image analysis. Using serial Ports: Reading from and writing to digitizing tables and similar serial devices.

Appendix A: Updating Helper App#2

Appendix B: Command Extensions - some general notes on the PiXCL Extension Command API.

  Sample code is displayed indented as shown below.

Initialize: {only one instance allowed}

UseCoordinates(PIXEL)
Title$ = "PiXCL Application Title"
WinExist(Title$,Res)
If Res = 0 Then Goto One_Instance
Beep
WinSetActive(Title$,Res)
WinShow(Title$,RESTORE,Res)
End

All components of the PiXCL language, and this entire document content including all preceding and subsequent pages are
Copyright 2012-2019 PiXCL Automation Technologies Inc. All Rights Reserved.
None of this content may be merged, adapted, editted, included in another document or reproduced in part
or in whole in any medium without prior written authorization . This explicitly includes user or programming
manuals of any type and instructional videos, whether produced for profit or not.
Authorization will generally be granted, subject to negotiated financial conditions.