Autore Topic: Form tipo maschere continue di access  (Letto 4649 volte)

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Form tipo maschere continue di access
« il: 26 Febbraio 2009, 00:23:10 »
Salve a tutti,
Vorrei chiedervi se è possibile creare una form tipo "maschere continue" di access.
Mi spiego: una form tipo dettagli di un preventivo, con possibilità di spostarsi tra i vari campi "descrizione" "quantità" "prezzo" modificarli e aggiungere da riga sotto, tipo execel.
C'è la possibilità con Gambas o la soluzione è fare una gridview con i pulsanti Aggiungi, Salva , Modifica etcc.
Accetto volentieri qualche suggerimento per come impostare una form preventivi.
Grazie mille

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #1 il: 26 Febbraio 2009, 17:36:28 »
Potresti intercettare i pulsanti delle frecce, in modo da spostarti nella Grid e, quando arrivi in fondo, aggiungere una nuova riga e procedere con l'inserimento dei dati...

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Form tipo maschere continue di access
« Risposta #2 il: 26 Febbraio 2009, 18:45:58 »
Se vuoi usare il metodo di md**** i codice dei tasti da intercettare sono questi:

Key.Code = 65361 tasto left
Key.Code = 65362 tasto up
Key.Code = 65364 tasto down
Key.Code = 65363 tasto right

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #3 il: 26 Febbraio 2009, 18:52:01 »
Si, potrei provare. Dev'essere comunque un bel lavoraccio :-?
Però, non so se devo impostare qualcosa, ma nella grid posso solo selezionare la riga, non entrarci..(spero di essermi spiegato) e non spostarmi a dx e a sx...
Comunque cerco una soluzione per la stesura del preventivo in maniera veloce.
Tu come la imposteresti?

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #4 il: 26 Febbraio 2009, 18:53:01 »
grazie dei codici, ma allora è possibile entrare nella grid?

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Form tipo maschere continue di access
« Risposta #5 il: 27 Febbraio 2009, 11:50:36 »
L'unica griglia che accetti un minimo di editazione è la ColumnView (se non mi ricordo male). Però si tratta comunque di editazione di ciò che è già inserito, non creazione di nuove linee .


Potresti però controllare se l'utente preme ad esempio un particolare tasto sull'ultima riga, nel qual caso aggiungerne da codice una.

P.S.:
per il controllo dei tasti è sempre meglio usare le costanti predefinite di Gambas.
Quindi Key.Up, Key.Down, Key.Left e Key.Right:
Codice: [Seleziona]
IF Key.Code = Key.Left THEN....


Cito dalla documentazione:
Citazione

NEVER use the key values directly, as they change between GUI components. Always use these constants!
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #6 il: 01 Marzo 2009, 16:55:41 »
Mi sa che vado un pò troppo sul complicato..sopratutto perchè vi ricordo che sto imparando..
Grazie comunque delle risposte.
Ho pensato di fare così:
Con doppio click sul record della grid apro un'altra form tipo pop up con solo la riga interessata, e da qua posso modificarla, all'uscita aggiorno il database. con un pulsante, oppure da tasto tastiera tipo F5 (mi date il codice? :-) ) apro la stessa maschera e aggiungo il record.
Cosa dite?
Ciao grazie

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Form tipo maschere continue di access
« Risposta #7 il: 01 Marzo 2009, 17:31:15 »
COdice

key.f5

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #8 il: 01 Marzo 2009, 17:37:32 »
Grazie, potresti spiegarmi meglio come funziona?
Funziona tipo pulsante?

Sub Key.f5_Click()
Mia funzione
End Sub

Offline Ceskho

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 3.778
  • Vi Veri Veniversum Vivus Vici
    • Mostra profilo
    • Pagina Personale
Re: Form tipo maschere continue di access
« Risposta #9 il: 01 Marzo 2009, 17:43:26 »
No...fai finta che ci sia una textbox nel tuo rom e tu voglia che premendo f5 nella casella di testo appaia la scritta "Golia"...

il codice è il seguente:

SUB Form1_keypress()

  IF key.code = Key.f5 then textbox1.text = "Golia"

END

In pratica quando tu premi il tasto il programma si interroga chiedendosi se il codice del tasto (key.code) sia uguale a quello di f5...se è vero allora appare la scritta nella casella di testo...

se hai dubbi chiedi pure...

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #10 il: 01 Marzo 2009, 18:23:45 »
Chiarissimo!!
Grazie mille. procedo
Ciao

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Form tipo maschere continue di access
« Risposta #11 il: 01 Marzo 2009, 23:49:50 »
Citazione

Con doppio click sul record della grid apro un'altra form tipo pop up con solo la riga interessata, e da qua posso modificarla, all'uscita aggiorno il database. con un pulsante, oppure da tasto tastiera tipo F5 (mi date il codice?  ) apro la stessa maschera e aggiungo il record.

Anch'io faccio così. Creo una griglia con almeno una riga vuota, che è sempre l'ultima. Se l'utente clicca sulla riga vuota (l'ultima), apro una finestra modale dove accetto in input i dati per i vari campi della riga della griglia, e poi, al ritorno, popolo la griglia ed incremento le righe. Se invece il doppio click è su una riga con dati, apro la stessa finestra modale ma, questa volta, in modalità edit, dove l'utente può modificare i dati già inseriti.

L'unica menata è per la cancellazione di una riga. Ma qui ho risolto con un "giochino" grafico. Ho un puntatore che mi indica quale riga indicizza il programma. Poi ho un pulsante per cancellare la riga indicata.
Non è "fine" ma funzionale ;-)

Ah, per questo genere di manipolazioni io mi trovo meglio con la GridView piuttosto che con la ColumnView.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #12 il: 02 Marzo 2009, 21:59:00 »
Perfetto!!
ma adesso mi devi proprio insegnare come fare il giochino grafico!:-)
Scherzo, ma se puoi darmi qualche dritta..
ciao e grazie mille

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: Form tipo maschere continue di access
« Risposta #13 il: 02 Marzo 2009, 23:42:05 »
E' di una semplicità unica.
Puoi mettere in una cella di una GridView anche un'immagine. Allora io faccio così: ho un'iconcina a forma di freccia (quella che vedi), che carico sulla riga su cui l'utente clicca.
Codice: [Seleziona]

PUBLIC SUB Griglia_Click()

  Griglia[Riga, 0].Picture = ""
  Riga = Griglia.Row
  Griglia[Riga, 0].Picture = Picture[Application.Path & "/icone/freccia.png"]
   
END

P.S.:
Riga è un indice numerico che viene inizializzato ad apertura del form sulla riga 0, e poi, come vedi, aggiornato via via dai click dell'utente.

Poi, ovviamente, se cancello una riga sposto il puntatore grafico di conseguenza. Così come se aggiungo una riga. Ma è tutto molto semplice.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline Golia

  • Senatore Gambero
  • ******
  • Post: 1.298
  • no xe mai massa tardi
    • Mostra profilo
Re: Form tipo maschere continue di access
« Risposta #14 il: 03 Marzo 2009, 23:08:36 »
Grazie, procedo