                                     |                                                  
              Big List Box Control - BLIST.VBX -  Version 1.00.27
          Copyright (C) 1994-1995 by Don Sleffel  All rights reserved.

                     FOR VISUAL BASIC APPLICATIONS UNDER 
                                 WINDOWS 3.1
                            WINDOWS FOR WORKGROUPS
				 WINDOWS NT
				 WINDOWS 95 

 		(PLEASE REVIEW THE ENTIRE CONTENTS OF THIS FILE!!!!)

	THE INFORMATION AND CODE PROVIDED IS PROVIDED AS IS 
	WITHOUT WARRANTY  OF ANY KIND, EITHER EXPRESS OR IMPLIED, 
	INCLUDING BUT NOT LIMITED TO  THE IMPLIED WARRANTIES OF 
	MERCHANTABILITY AND FITNESS FOR A PARTICULAR  PURPOSE. IN 
	NO EVENT SHALL DON SLEFFEL BE LIABLE FOR ANY DAMAGES 
	WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, 
	CONSEQUENTIAL, LOSS  OF BUSINESS PROFITS OR SPECIAL 
	DAMAGES, UNDER ANY CIRCUMSTANCES.
   
*********************************************************************
*  This program executable, and related text files may be           *
*  distributed freely and may be used without fee by any individual *
*  for  non-commercial  use  and  by  any  United States Government *
*  organization.                                                    *
*                                                                   *
*  Non-commercial use: free                                         *
*                                                                   *
*  U.S. Government use: free                                        *
*                                                                   *
*  Commercial use:  Contact Don Sleffel at                          *
*      <Don.Sleffel@WichitaKS.attgis.com>                           *
*   or <76645.3404@compuserve.com>                                  *
*   or  (316)-744-1780                                              *
*   or write to:                                                    *
*       Don Sleffel                                                 *
*       2118 Frontenac                                              *
*       Wichita, KS  67219                                          *
*                                                                   *
*                                                                   *
*  This program may be included on CD-ROMs or in any other          *
*  distribution methods freely,  provided  any  charge  for such is *
*  for recovering the cost of distribution  and  reasonable  profit *
*  and not for the purpose of "selling" the program.  In any case   *
*  the  distribution  must  contain  the complete program including *
*  this file.                                                       *
*********************************************************************



 DESCRIPTION:
 ============

BLIST.VBX is a Visual Basic control which implements a virtual list box.
The control has the same look and feel, most of the same properties, and
functions as the default list box.  The difference is, that unlike the
standard list box which is limited to 64K of data, BLIST can display up
to 5 million lines of any size.  BLIST was designed to display data from
a database which could possibly be greater than what could be saved in a
standard list box.  Often in these applications it is impossible to know
ahead of time how much data will be returned from a data base query.

Included in this release (1.27) is the BLIST.VBX, this document, and a
small Visual Basic program which demonstrates the use of BLIST.

BLIST works by storing the data in a temporary disk file.  This has both
advantages and disadvantages but the main advantage is that this allows
the list box to behave very much like a standard list box, while making
efficient use of resources.  Data is added to it with the additem
method.  While some other virtual list boxes require the application to
"create" the data on the fly, BLIST keeps track of it just like the
standard list box.  In addition the display and scrolling operations are
very fast and do not depend on what may be slow database operations.
The scroll bar operates correctly by scrolling through the current
length of the data in the list box without requiring the application to
artificially set the maximum number of rows or having to calculate ahead
of time how many rows will be loaded into the list box.  While the list
box uses a relatively small amount of RAM it does require some free disk
space for the temp file.  This is generally not a problem because a lot
of Windows programs use temporary files and the file will not be very
large, for average sizes of data.  The control manages all of the file
operations, thus keeping them invisible to the user.

DIFFERENCES FROM STANDARD LIST BOX

While most of the operation of BLIST is like that of a standard list
box, there are a few differences.  All of the properties work pretty
much the same as a standard list box.  The main exception is the array
properties.  Because VB only allows integers as indexes and this box
needs longs, the indexes don't work.  Instead, to address a particular
row, set the ListIndex to the row, and then get array property using an
index of 0.  For example: blist1.listindex = 10000 if blist1.selected(0)
= TRUE then ...

The listindex property does not = -1 when nothing has been selected.

BLIST also does not have either the SORTED or COLUMNS property that the
standard list box has.

BLIST does not support OWNERDRAW or other special mechanisms which a
standard list box does.  In general BLIST will not respond to any user
messages.

BLIST has an HSCROLL property that the standard list box does not.  The
HSCROLL property is a boolean type which enables and disables the
horizontal scroll bar.

BLIST also contains an HSCROLL event which the standard list box does
not have.  The HSCROLL event fires whenever the box is scrolled
horizontally and returns as an argument the number of twips which the
list has been scrolled from the left edge.  This can be used to keep a
heading label aligned with data in the list box by using the move
command.  The following code segment shows how you can use the HSCROLL
event to keep Label1 aligned with the text in the list box.

Sub BList1_HScroll (left_twips As Single)

    Label1.Move Label_pos - left_twips

End Sub



Complete List of Properties:
----------------------------
PROPERTY	
BACKCOLOR			
DRAGICON			
DRAGMODE			
ENABLED	
FONTBOLD	
FONTITALIC	
FONTNAME	
FONTSIZE	
FONTSTRIKE				
FONTUNDER	
FORECOLOR	
HEIGHT		
HELPCONTEXTID	
INDEX			
LEFT			
MOUSEPOINTER		
MULTISELECT		
CTLNAME		
TABINDEX		
TABSTOP		
TAG 			
TOP			
VISIBLE		
WIDTH			
HWND			
LISTINDEX		
TOPINDEX	
LIST					Read Only
LISTCOUNT				Read Only
NEWINDEX				Read Only
SELECTED				Read Only
ITEMDATA		
HSCROLL				

List of  Events:
-----------------
EVENT		
CLICK			
DBLCLICK	
DRAGDROP	
DRAGOVER	
GOTFOCUS
HSCROLL		
KEYDOWN		
KEYPRESS		
KEYUP			
LOSTFOCUS		
MOUSEDOWN		
MOUSEMOVE		
MOUSEUP		




List of Methods:
-------------------
ADDITEM
CLEAR
REFRESH


BLIST has been extensively tested on Windows 3.1, Windows For
Workgroups, Windows NT and Windows 95 all running Visual Basic version
3.0.  It is currently being used in at least one large application
produced by a fortune 100 company with thousands of users. While I have
done my utmost to test it on different hardware and software platforms,
no software can be considered bug free, and it may or may not suit your
purpose.  It has not been tested with any applications other than Visual
Basic version 3.0, so it may or may not work with others.

BLIST is provided free of charge for personal use.  You are also free to
distribute it to others for non-commercial personal use, provided you do
not charge anything for it.  For commercial usage please contact me.
You need not register BLIST for non-commercial use, however if you
choose to do so, any updates to BLIST whether it involves bug fixes or
enhancements will be sent to free of charge.  To register your version
of BLIST, print the following form and send $15 to:

                            Don Sleffel
                           2118 Frontenac
                         Wichita, KS  67219

For questions, comments or to report problems you can contact me at the above address 
or by e-mail at:
<Don.Sleffel@WichitaKS.attgis.com>
or <76645.3404@compuserve.com>


                       RETURN THE FOLLOWING FORM
_____________________________________________________________________________

                 BLIST (Version 1.00.27) REGISTRATION


                             Send $15  to:

                              Don Sleffel
                             2118 Frontenac
                            Wichita, KS  67219




      Name: ________________________________________________________


   Address:__________________________________________________________


           _________________________________________________________

      City:________________________________State:____ Zip:__________
	

    e-mail:____________________________________________________________





