Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2019
    residenza
    Veneto
    Messaggi
    9

    [VB6] Selezione riga da controllo HierarchicalFlexGrid

    Salve,
    utilizzo "VB6 sp3" su una macchina virtuale "Windows XP" installata su "Windows10".
    Ho un form con due MSHierarchicalFlexGrid:
    1) hfgElenco --> collegata ad un recordset di nome rsElenco che preleva i rks da una tabella Access Elenco.mdb)
    2) hfgSelezionati --> collegata ad un rs di nome rsSelezionati che preleva i rks da una tabella Access Selezionati.mdb
    "Cliccando" sulla hfgElenco il rk corrispondente alla riga viene aggiunto alla tabella Selezionati.mdb, e viene aggiornata la hfgSelezionati. E fino a qui tutto ok.
    Il problema è che non riesco a selezionare le righe sulla hfgSelezionati per prelevare i dati di un elemento ben preciso tra quelli presenti sulla hfg: se clicco su una riga della hfg è sempre "selezionata" o la prima riga o la riga immediatamente sopra quella su cui ho cliccato, e questo l'ho verificato inserendo una riga con un msgbox che mi riporta la riga selezionata (hfgSelezionati.row).
    Tutte e due le hfg vengono collegate al rispettivo recordset con l'istruzione [set hfg.datasource= nomeRs] e, per la hfgSelezionati, prima di modificare il rsSelezionati scollego la hfgSelezionati dal recordset [set hfg.datasource= Nothing] per poi ricollegarla una volta modificato il rs.
    Non mi sembra ci sia altro da dire ... ma sono un dilettante e pertanto ... :-)
    A me non sembra un problema legato al codice ma invece quasi sicuramente lo è nel senso che non gestisco bene "Metodi" e/o "Proprietà" del controllo hfg.
    Qualcuno è in grado di darmi qualche dritta?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Oct 2019
    residenza
    Veneto
    Messaggi
    9
    Salve a tutti,
    ho risolto il problema.
    Spiego come ho risolto, così se qualche altro nostalgico di VB6 avesse lo sesso problema può ricorrere allo stesso strattagemma.
    Allora, visto che tuto sembrava indicare che la presenza della riga 0 con l'intestazione dei campi fosse la causa di tutto ho posto la proprietà FixedRow = 0 e ho messo la hfg "figlia" poco sotto la hfg "madre" (lo spazio di una label per indicare che quelli sotto sono i rk selezionati) così i campi risultano allineati e con la medesima intestazione.
    E così leggendo la proprietà .MouseRow si ottiene la riga su cui si è cliccato.
    Se dovesse esserci la necessità di "intestare" le colonne si possono inserire sopra (e a diretto contatto delle colonne della hfg) delle TextBox da utilizzare per scriverci le intestazioni.
    Saluti a tutti
    Otello1952

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.