Oppure

Loading
10/11/07 9:21
dimxasinteger
SALVE A TUTTI e a Te, PIERO!
volevo chiedervi un piccolo aiuto sul visual basic 6, che se qualcuno lo sa, davvero vengo a baciarlo in fronte (metaforicamente!!)
Allora il mio problema è questo: vorrei creare un sottomenu con gli elementi di una listbox e/o di combobox per eliminarli singolarmente dal sottomenu, come faccio? Aiuto! grazie a tutti ;):k: - i love visual basic 6 - DimXasInteger
aaa
10/11/07 15:31
P4p3r0g4
nel senso destro --> menu a tendina --> cancella?
io mi sono ammazzato ma ho trovato (su internet) un codice geniale.

Con questo codice ricavi se è stato premuto il tasto dx del mouse e apre il menù a tendina

Private Sub List2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim lItem As Long
If Button = vbRightButton Then
    lItem = GetRClickedItem(List2, X, Y)
        If lItem <> -1 Then
            List2.ListIndex = lItem
            PopupMenu mnMenu
        End If
End If
End Sub


Con questo codice ricavi l'elemento selezionato col tasto destro
Public Function GetRClickedItem(MyList As Control, X As Single, Y As Single) As Long
    Dim clickX As Long, clickY As Long
    Dim lRet As Long
    Dim CurRect As RECT
    Dim l As Long
    clickX = X \ Screen.TwipsPerPixelX
    clickY = Y \ Screen.TwipsPerPixelY
    For l = 0 To MyList.ListCount - 1
      lRet = SendMessage(MyList.hwnd, LB_GETITEMRECT, l, CurRect)
     If (clickX >= CurRect.Left) And (clickX <= CurRect.Right) And (clickY >= CurRect.Top) And (clickY <= CurRect.Bottom) Then
            GetRClickedItem = l
            Exit Function
        End If
    Next l
    GetRClickedItem = -1
End Function

aaa
10/11/07 18:21
dimxasinteger
grazie P4p3r0g4, ma..
purtroppo no :( io intedevo il menu che si crea tipo File-Modifica-Visualizza-Esci, in un sotto menu di questi, voglio vedere la lista presente nella listbox (e pure di una combobox se è possibile) se c'è qualcosa e cliccando sull'elemento si rimuove.. so che è un po impossibile ma..Impossible is nothing, giusto? Grazie della risposta e io continuo a "googlare" ma voi aiutatemi :alert: :D (sono nel mondo del basic da poco, però qualcosina mene intendo gia, lo faccio a scuola, e l'altr'anno ho fatto un bel po del C), A presto :alert::alert:
Ultima modifica effettuata da dimxasinteger 10/11/07 18:24
aaa
11/11/07 16:04
P4p3r0g4
Non dovrebbe essere difficile.
ammesso che hai già creato l'interfaccia file,visualizza,modifica,...
al click sul tuo elemento apri una finesta figlia che recupera le listbox e combobox e al click su questa combo-listbox (della form figlia) elimini l'elemento della form stessa (figlia e di quella madre) (essendo uguali non dovrebbe essere impossibile, no?)dovresti cavartela senza moduli con 2 form ma se hai dei problemi crea un modulo e settagli una variabile a listbox collegata a quella del form madre.
posta pure ciò che ti risulta difficile fare di quello che ti ho esposto.
aaa
12/11/07 9:07
dimxasinteger
ancora non so fare ste cosette :D
praticamente x scuola ho fatto un programma dove ci sono delle combobox da cui si puo aggiungere e togliere oggetti.. e x toglierli con le voci del sotto menù modifica>Rimuovi Unità Di Misura>(Elementi della combobox delle unità di misura) è fattibile? :D
codice vi prego.. :D il nome della combobox è comUDM. vi ringrazio!

~Dim X As Integer~:alert:
aaa
12/11/07 13:56
P4p3r0g4
creato il menù di base , il sottomenù a modifica "rimuovi UDM" il sottomenù-base mnUdm con index = 0

nel senso
Modifica
----rimuovi udm
--------(sottomenù base mnudm con index = 0, enabled = false)


usi il codice


Private Sub Carica()
Dim x As Long
If MnUdM.UBound > 0 Then
For x = 1 To MnUdM.UBound
Unload MnUdM(x)
Next x
End If
For x = 1 To comboUdm.ListCount
Load MnUdM(x)
MnUdM(x).Caption = comboUdm.List(x - 1)
MnUdM(x).Visible = True
MnUdM(x).Enabled = True
Next x
End Sub



Private Sub MnUdM_Click(Index As Integer)
comboUdm.RemoveItem (Index - 1)
Carica
End Sub
aaa
12/11/07 23:24
dimxasinteger
ehm
ho provato a mettercelo, e non mi carica lo stesso la lista :grr: mi rimane un sottomenu a Modifica>Rimuovi UDM>"" che non è enabled.. aiuto :d ma semo sicuri che è davvero fattibile? devo solo mostrare nel sotto menu rimuovi udm tutte le voci (tranne quella di base -"Seleziona Unità di Misura"-) di una combobox chiamata comUDM.. non pensavo fosse così impossibile! :(
aaa
13/11/07 13:19
P4p3r0g4
hai chiamato la sub nel form load?
io l'ho avviato correttamente sul mio pc.
vuoi che t'invio il progetto?

PS:e comunque, baciati i gomiti perche non è che ti è dovuto il mio aiuto, sai?
Ultima modifica effettuata da P4p3r0g4 13/11/07 13:22
aaa