|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
[VB.Net] Due domande veloci...
1)In Visual Studio 2008 Professional non trovo il controllo flexGrid... ha cambiato nome? Se no, come faccio ad aggiungerlo ad un form??
2)Come faccio ad impostare i comandi da tastiera per i pulsanti? So che basta mettere una & prima della lettera che, premuta assieme ad Alt, attiva il cotrollo; non c'è un modo per usare un pulsante premendo direttamente A invece di ALt+A? GRAZIE a tutti |
|
|
|
|
|
#2 | ||
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Quote:
Questa la funzione da usare : Codice:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Integer) As Integer |
||
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
--------------------------------------------------------------------------------- Per la flexGrid ho risolto usando la DataGrid che mi sembra uguale... EDIT. Come faccio ad impostare l'intestazione della riga? Grazie... Ultima modifica di birmarco : 16-11-2008 alle 21:42. |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Non è così semplice.
Devi fare in modo che ci sia una routine nell'applicazione che è sempre "in ascolto", pronta ad intercettare ogni azione su tastiera o mouse... Ti faccio un esempio, che si fa prima. Poniamo che voglia mappare i tasti A-B-C e che una semplice pressione di questi tasti, ( quindi niente Alt o Ctrl ecc... ), vada ad eseguire via codice il Click del pulsante associato. Mi basterà intercettare i codici per i tasti A,B,C ossia rispettivamente 65, 66, 67, in questo modo : Codice:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Integer) As Integer
Private valoreRitorno As Integer = 0
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Dim i As Integer = 0
For i = 65 To 67
valoreRitorno = GetAsyncKeyState(i)
If valoreRitorno = -32767 Then
ListBox1.Items.Add(i & " -> " & Chr(i))
Select Case i
Case 65 'A
ButtonA.PerformClick()
Case 66 'B
ButtonB.PerformClick()
Case 67 'C
ButtonC.PerformClick()
Case Else
'...
End Select
End If
Next i
End Sub
La ListBox serve a scopo di debug, e a ricavare il codice da ogni tasto ! E il gioco è fatto. |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
PS. Grazie per la cosa dei tasti |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Ovviamente poi dovrai "copiare localmente" l'Ocx e ridistribuirlo con l'applicazione |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
------------------------------------------------------------------------------- Ora vedrò di sfruttare la funzione dei tasti che mi hai scritto... se ti può interessare, la userò per questo |
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Se non puoi installare VB6, puoi googlare in giro... Ci sono molti siti che mettono a disposizione praticamente ogni DLL / OCX di Windows. Quando ce l'hai, click destro sulla colonna dei componenti di VS2008 ( quella a sinistra ) / scegli elementi / componenti COM. |
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
Delle seguenti manca quella rossa: Codice:
mainGrid.rows = 10 'Numero righe tabella mainGrid.cols = 10 'Numero colonne tabella mainGrid.row = 3 'Posizionamento su una riga specifica mainGrid.col = 4 'Posizionamento su una colonna specifica Potrebbe essere il file OCX della FlexGrid danneggiato?? Anche perchè non ho trovato una proprietà sostitutiva a "cols"... Che manchi di proposito sembra assurdo in quanto le proprietà "col" e "rows" ci sono... Consigli? Idee? A me serve un controllo tabella che abbia un numero preciso di righe e colonne intestate (generate anche a priori). Le celle devono poter contenere dati string, essere ridimensionabili anche durante l'esecuzione del programma ed essere selezionabili (tramite cordinate, per esempio col e row) per eseguire l'elaborazione dei dati (principalmente numeri) scritti dall'utente... Se tu o qualcun'altro conosce un controllo che faccia questo... mi sarebbe molto utile: sto cercando di creare un semplice foglio di calcolo Grazie!
|
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Stranissimo problema.
Ma sto FlexGrid lo usavi con che linguaggio ? Visual C ? Potrebbe essere che l'Ocx che hai scaricato è vecchio. Insomma se hai Visual Studio 6 ( sennò non so con che linguaggio lo usavi... ) installalo, e ti ritroverai la versione giusta di FlexGrid. Io da VB 2008, se faccio Click destro sul FlexGrid mi da la classica finestrella Proprietà tipica di molti controlli ActiveX, e posso impostare numero righe, numero colonne e parecchia altra roba...
|
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
tu come fai ad avere la flexgrid in vb 2008? |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Posso dirti al 99% che venga messa lì dall'installazione di VS6. Al tuo primo post dicevi che "non riuscivi a trovarla" in VB 2008, perciò pensavo che avessi già sviluppato su FlexGrid in un qualche linguaggio precedente, e cercassi di migrare a VB2008. Io non ce l'ho "in VB 2008", perchè non è un componente Framework, ma COM. La importo in VB 2008, come ti ho già spiegato. Cmq, quella che vedo io è "Microsoft FlexGrid Control 6.0". |
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
Credo sia la stessa... ma se importo un progetto in VB6 dici che la flexgrid me la acquisisce da solo? |
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
La Hierarchical corrisponde al componente COM : Windows\System32\MSHFLXGD.OCX Cmq, se la uso su un progetto VB ( 6 o 2008 ), anche questa mi permette di impostare moltissime proprietà a design, tra cui numero righe/colonne ecc... Fatti prestare una copia di VB6... |
|
|
|
|
|
|
#15 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
|
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
Ha molte funzioni interessanti ( e tu stesso sei qui in cerca di "vecchi" componenti OCX, mi pare In molti progetti tu potresti perfino sviluppare dentro VB2008 scrivendo codice VB6 senza accorgertene. D'accordo con te che certe scelte di VB 2008 possano non piacere (io con VB 2008 mi trovo benone). In VB 2008 ci sono diversi validi controlli Griglia, ma certo meno "immediati" nell'utilizzo dei buoni vecchi Ocx... |
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
|
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Proverei per primo il DataGridView.
Penso sia il più semplice da usare. Meglio se tu facessi un rapido esempio di come lo vuoi utilizzare... |
|
|
|
|
|
#19 | |
|
Senior Member
Iscritto dal: Mar 2008
Città: Milano; 9 Vendite concluse -> Wilde; emmepi; Homerj81; cos1950; mariotanza; Benia; grigor; alekia; ARG0
Messaggi: 11160
|
Quote:
La voglo usare nello stesso modo della tabella di excel |
|
|
|
|
|
|
#20 | |
|
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Quote:
A parte che io ho detto "DataGridView" e non "DataGrid", e poi : Codice:
DataGridView1.Rows.Add(5)
DataGridView1.Rows(0).HeaderCell.Value = "Intestazione Riga 1"
|
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:41.




















