> ## Content Index
> Fetch the complete content index at: https://nolongerset.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# twinBASIC Update: April 2, 2023
- URL: https://nolongerset.com/twinbasic-update-april-2-2023/
- Published: 2023-04-02T23:19:25.000Z
- Updated: 2026-05-08T12:50:44.000Z
- Description: Highlights include an experimental ListView control, read-only JSON view for tbform and tbcontrol files, and a mention of twinBASIC in The Register.
- Author: Mike Wolfe
- Tags: twinBASIC Weekly Update, #Import 2026-05-20 02:59

*On April 23, 2021, I helped [Wayne Phillips](twitter.com/WaynePhillipsEA/) introduce the world to [twinBASIC](https://www.twinbasic.com/) at the [Access DevCon Vienna](https://www.donkarl.com/devcon/) conference. I [boldly predicted](https://nolongerset.com/devcon-2021/) that twinBASIC (along with the Monaco editor) would replace VBA and its outdated development environment by 2025\. With that goal in mind, this weekly update is my attempt to keep the project fresh in the minds of the VBA development community.*

*Every Sunday, I will be providing updates on the status of the project, linking to new articles discussing twinBASIC, and generally trying to increase engagement with the project. If you come across items that should be included here, tweet me [@NoLongerSet](https://twitter.com/NoLongerSet) or email me at mike at nolongerset dot com.*

*Here are some links to get involved with the project:*

- **[Custom twinBASIC IDE Installation Guide](https://nolongerset.com/how-to-install-twinbasic/)* (NOTE: the twinBASIC VSCode extension is under a feature freeze until 2023)*
- *[GitHub Issue Tracker (report bugs)](https://github.com/WaynePhillipsEA/twinbasic/issues)*
- *[twinBASIC Discord Server](https://discord.com/invite/UaW9GgKKuE) ([chat about the project](https://github.com/WaynePhillipsEA/twinbasic/discussions/629))*
- *[twinBASIC/VBx LinkedIn Group](https://www.linkedin.com/groups/14132101/)*

---

## Highlights

### ListView Control Added

An experimental ListView control has been added to the WinNativeCommonCtls toolbox. To use the control:

1. Left-click to select the control from the WinNativeCommonCtls toolbox
2. Click and drag to add the control to the form
3. Switch to the code-behind to add code to populate the list box (see sample code below)
4. Run the project
5. Test the output

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2023/04/image-4.png)

I've never used the ListView control (I'm much more familiar with Microsoft Access's native Listbox control). However, some quick Googling [turned up some sample code](https://www.developerfusion.com/article/74/listview-control/3/) that I was able to use to test the basic functionality:

```vba
Private Sub Form_Load()
    
    ' Set the View
    ListView1.View = lvwReport
    ' Add the columns
    With ListView1.ColumnHeaders
        .Add , , "Name"
        .Add , , "Surname"
        .Add , , "Address"
    End With

    With ListView1.ListItems
        ' Add the normal text
        .Add , , "Fred"
        .Add , , "Sarah"
        .Add , , "Paul"
    End With
    With ListView1
        ' Add a value to the second column to the first item on the list ("Fred")
        ' (1) = First item on list
        .ListItems(1).SubItems(1) = "Crowley"
        .ListItems(2).SubItems(1) = "Ives"
        .ListItems(3).SubItems(1) = "Smith"
        ' Add a value to the third column to the first item on the list ("Fred")
        ' (1) = First item on list
        .ListItems(1).SubItems(2) = "16 Liverpool Lane"
        .ListItems(2).SubItems(2) = "102 England Street"
        .ListItems(3).SubItems(2) = "1 Baker Street"
    End With
End Sub
```

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2023/04/image-5.png)

### View As JSON for tbForm and tbControl designer files

If you use **File > Export Project...** or the **Project: Export Path** and **Project: Export After Save** settings for version control with twinBASIC, you're likely familiar with the text-based JSON format that the tbForm designer files get exported into. With this new shortcut menu command, you can new see a **read-only** view of this JSON directly in the IDE.

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2023/04/image-2.png)

### Added IDE Option to Show Memory and Resource Usage

From Wayne in Discord:

> In BETA 284, there's a new IDE option: "Show memory and resource usage"

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2023/04/image.png)

New IDE option added in BETA 284: "Show memory and resource usage"

> This is mostly for my benefit for when I'm tackling the memory leaks soon. But others might also find it useful:

![](https://storage.ghost.io/c/eb/d7/ebd732c1-5f03-4f07-b386-5d08557e15c9/content/images/2023/04/image-1.png)

> (these should be the same figures you can find in the Task Manager, by selecting columns `Memory (active private working set)`, `User objects` and `GDI objects`, and looking at the twinBASIC\_WinXX.exe process)

### Various IDE Improvements

- form designer dropdown list of controls is now alphabetically sorted
- F6 shortcut key for launching form preview now works when behind-form code editing
- after a UserControl change, other form designers will now auto-refresh without requiring a click on 'RESYNC' button
- when resizing a control on the form designer, the IDE no longer tries to render it until the mouse is released
- hover/intellisense now shows more pertinent information for procedures and API declares (such as procedure type, DeclareWide, CDecl)

### 

## Around the Web

### twinBASIC Gets a Mention in The Register

In the article, *[Nostalgic for VB? BASIC is anything but dead](https://www.theregister.com/AMP/2023/03/28/nostalgic%5Ffor%5Fbasic/)*, author Liam Proven mentions twinBASIC alongside RAD Basic near the top of the article as two small-team projects seeking to "recreate" Visual Basic "or something like it":

> Perhaps because VB started off as a one-man project, multiple people and small teams have sought to recreate it, or something like it. *The Reg* has covered one of these, [RAD Basic](https://www.radbasic.dev/), a couple of times: first when it attempted to [crowdfund its development](https://www.theregister.com/2021/05/06/visual%5Fbasic%5F6%5Freturns/), and later [when it released its third alpha version](https://www.theregister.com/2022/05/06/rad%5Fbasic%5Falpha%5F3/).  
>  
> Closely comparable is [twinBASIC](https://twinbasic.com/), which publishes weekly updates so you can track its [progress](https://nolongerset.com/tag/twinbasic-weekly-update/). That's good, as there's as little to see on twinBASIC's [Github](https://github.com/twinbasic/twinbasic) as there is on the [RAD Basic](https://github.com/radbasic) one. We reckon that the two projects should talk: they might benefit from teaming up.

### RAD Basic vs. twinBASIC, Revisited

[RAD Basic vs TwinBasic, Which do you prefer? - Page 2-VBForumsI see there is this new project: https://www.radbasic.dev/editions.php https://twinbasic.com/preview.html Which do you prefer? Why? We are able to write code with this language? Share down below your opinionVBForums - Visual Basic and VB .NET Discussions and More!![](https://www.vbforums.com/images/misc/logo.gif)](https://www.vbforums.com/showthread.php?895421-RAD-Basic-vs-TwinBasic-Which-do-you-prefer/page2)

### 

## Changelog

Here are the updates from the past week. You can also find this information by visiting the GitHub [twinBASIC Releases page](https://github.com/WaynePhillipsEA/twinbasic/releases).

[Releases · WaynePhillipsEA/twinbasicContribute to WaynePhillipsEA/twinbasic development by creating an account on GitHub.![](https://github.githubassets.com/favicons/favicon.svg)GitHubWaynePhillipsEA![](https://opengraph.githubassets.com/13bf5f13278e5633e644e312c6a75cfe0baf97f01dd45660573b36f5de0ee945/WaynePhillipsEA/twinbasic)](https://github.com/WaynePhillipsEA/twinbasic/releases)

**WARNING:** The following issue is present in BETA builds 202 - 286 (the latest build as of publication):

- there are known memory leaks in these versions, so memory usage will be higher than normal

### BETA 282

- WARNING: there are known memory leaks in this version, so memory usage will be higher than normal
- added: (EXPERIMENTAL/INCOMPLETE) WinNativeCommonCtls.ListView control

### BETA 283

- WARNING: there are known memory leaks in this version, so memory usage will be higher than normal
- changed: default IDE setting for Single-Click Preview is now OFF by default
- improved: form designer dropdown list of controls is now alphabetically sorted \[ DannyB, discord \]
- improved: F6 shortcut key for launching form preview now works when behind-form code editing \[ Tecman, discord \]
- improved: after a UserControl change, other form designers will now auto-refresh without requiring a click on 'RESYNC' button
- improved: when resizing a control on the form designer, the IDE no longer tries to render it until the mouse is released \[ fafalone, discord \]
- improved: hover/intellisense now shows more pertinent information for procedures and API declares (such as procedure type, DeclareWide, CDecl) \[ fafalone, discord \]
- fixed: (regression since BETA 275) decompiled type library documents in the References project folder were not showing any syntax highlighting
- fixed: when importing a VBP, form controls that are internal UserControls are now stripped of their hardcoded project name references, allowing for renaming of the project without interfering with UserControl imports \[ fafalone, discord \]

### BETA 284

- WARNING: there are known memory leaks in this version, so memory usage will be higher than normal
- added: 'View As JSON' context menu option in the IDE file explorer, for tbform and tbcontrol designer files
- fixed: (regression since BETA 283) moving a control in the form designer caused a momentary flicker whilst the control was redrawn \[ sokinkeso, discord \]
- fixed: intellisense sometimes showed duplicate, and sometimes invalid OnPropertyGet/OnPropertyLet/OnPropertySet Handles events \[ fafalone, discord \]
- added: IDE option of 'IDE: Show memory and resource usage' (default False, accessed via Tools > IDE Options dialog)

### BETA 285

- WARNING: there are known memory leaks in this version, so memory usage will be higher than normal
- fixed: VBP import of Ax/UserControl properties, tB was converting tabs inside strings into spaces \[ Tecman, discord \]
- fixed: PictureBox and Image controls now responds to direct interface requests for IPicture/IPictureDisp \[ Tecman, discord \]
- fixed: ActiveX events that fire during deactivation are now muted

### BETA 286

- WARNING: there are known memory leaks in this version, so memory usage will be higher than normal
- added: discord/twitter/github/kofi links within the IDE
- fixed: (regression) Timer control events could fire twice \[ sokinkeso, discord \]