Quantcast
Channel: VBForums - CodeBank - Visual Basic 6 and earlier
Viewing all articles
Browse latest Browse all 1448

VB6 Base-Widget for tree-like (nested) Query-Design

$
0
0
A small Base-Demo (dependent on vbRichClient5), to show how a seemingly complex,
hierarchical Control can be implemented with only two Base-Widgets.

The visual appearance is quite similar to the jQuery-based implementation here:
http://mistic100.github.io/jQuery-QueryBuilder/

But the Codebase is much smaller (about 250 lines currently, whereas the jQuery-
implementation is about 1700 lines ... when fully completed with the yet missing ComboBoxes
and Field-Value-Widgets, I guess that the VB6-version will end up with about 550 lines).

Here's a ScreenShot what it currently looks like:


- cwQueryGroup (about 160 lines of code - this is the red-bordered Widget with the Buttons)
- cwQueryRule (about 70 lines of code - this is the "Stripe-Widget" with the green Border)

What remains is now only the introducion of 2 cwDropDown-Widgets (one for the FieldNames
and one for the logic-Operators) - and a Handler-Widget for the comparison-value -
which in the simplest case could be a cwTextBox) - the Demo as it currently is, depends only
on RC5 (to make it easier for a first fast test) - the just mentioned additional Widgets for the
Field-Comparison-Logic are located in vbWidgets.dll, which is available as a Zip-Download on:
http://vbrichclient.com/#/en/Downloads.htm
(3rd section - Zip-Download from the GitHub-Repo).

Let me know when there's interest, to complete the current Base-implementation (e.g. later handing over
the Field-List and Field-Types of an ADO- or SQLite-Recordset, then dynamically creating the DropDown-Contents
and dynamically adding the appropriate Field-Value-Input-Widgets, which are matching the selected Fields Type)...

I could help with suggestions and code-snippets, where to plug the missing functionality in, and with
general "how-to-do-RC5-Widgets"... :)

Here's the Download for the Demo-Code:
QueryDesigner.zip

Hoping this Base-Implemenation is nice and encouraging enough for others, to complete what was
started here - (the Demo already does the nested Tree-Rendering, adding, removing, MouseHovering,
and MouseWheel-based Scrolling when the Widgets run out of Space of their Root-Container -
so the heavy lifting with regards to the graphics-rendering is already "out of the way")...

Olaf
Attached Files

Viewing all articles
Browse latest Browse all 1448

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>