Solved

Sendmessage and LVM_INSERTITEM problem

Posted on 2004-08-20
4
1,159 Views
Last Modified: 2008-01-09
I want to be able to insert items into a listview via Sendmessage and LVM_INSERTITEM.  It actually inserts the item and it shows up in the listview, but immediately after it inserts the item the program terminates with an exception.  I'm using VB6 and MSCOMCTL.OCX.

Any ideas why is erroring out?
 
Here's the code I have:

'Begin VB
Option Explicit

Private Const LVM_FIRST As Long = &H1000
Private Const LVM_INSERTITEM As Long = (LVM_FIRST + 7)

Private Const LVIF_TEXT As Long = &H1
Private Const LVIF_STATE As Long = &H8


Private Type LV_ITEM
    mask As Long
    iItem As Long
    iSubItem As Long
    state As Long
    stateMask As Long
    pszText As String
    cchTextMax As Long
    iImage As Long
    lParam As Long
    iIndent As Long
End Type

Private Declare Function SendMessage Lib "user32" _
    Alias "SendMessageA" _
   (ByVal hwnd As Long, _
    ByVal wMsg As Long, _
    ByVal wParam As Long, _
    lParam As Any) As Long


Private Sub InsertIntoLV()
Dim LVitem As LV_ITEM
Dim lRes As Long

   With LVitem
      LVitem.mask = LVIF_TEXT    '; // Text Style
      LVitem.cchTextMax = 256    '; // Max size of test
      LVitem.iItem = 0           '; // choose item
      LVitem.iSubItem = 0        '; // Put in first coluom
      LVitem.pszText = "My Text" '; // Text to display (can be from a char variable) (Items)
   End With

   Call SendMessage(Me.ListView1.hwnd, LVM_INSERTITEM, 0, LVitem)
   
End Sub
'End VB
0
Comment
Question by:Pber
  • 2
4 Comments
 
LVL 85

Accepted Solution

by:
Mike Tomlinson earned 100 total points
Comment Utility
0
 
LVL 26

Author Comment

by:Pber
Comment Utility
I was just trying to get fancy with something.  Looks like I'm SOL, oh well.

thanks

Pat.
0
 
LVL 85

Expert Comment

by:Mike Tomlinson
Comment Utility
I haven't found any technical articles on the subject...only these other posts that say it can't be done.

Idle_Mind
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Most everyone who has done any programming in VB6 knows that you can do something in code like Debug.Print MyVar and that when the program runs from the IDE, the value of MyVar will be displayed in the Immediate Window. Less well known is Debug.Asse…
When designing a form there are several BorderStyles to choose from, all of which can be classified as either 'Fixed' or 'Sizable' and I'd guess that 'Fixed Single' or one of the other fixed types is the most popular choice. I assume it's the most p…
Get people started with the process of using Access VBA to control Excel using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Excel. Using automation, an Access application can laun…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now