Originariamente inviato da michele79
Ciao...vi scrivo anche alle 2 di notte...ma quanto vi voglio bene!!!
....allora...devo salvare alcune impostazioni del mio programma su di un file,e su di un altro i dati presenti in una griglia!
Come posso fare? Si deve usare un oggetto apposito per lavorare con i file?Si puo generare un file direttamente da VB se esso non esiste!?
ho cercato in giro.... ma non ho trovato nulla di chiaro... :master:
seconda domanda...come posso disabilitare la "x" di una form?Cioè non voglio toglierla...ma la voglio far diventare grigia!!!C'è una specie di enable per quell'affare!!!???
ho trovato questo codice...
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
If tieniaperto = False Then
If UnloadMode = vbFormControlMenu Then
Cancel = True
End If
End If
End Sub
solo che ignora il click sulla "x" solamente!
Ciao...
Allora le impostazioni del programma potresti salvarle in un file INI (che è standard). Ci sono alcune API:
codice:
Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
Su PSC trovi sicuramente molti esempi (www.planetsourcecode.com).
Per quanto riguarda il contenuto della griglia, puoi crearti semplicemente un file .DAT dove spiattelli dentro i dati. Ora, puoi usare l'istruzione Open per aprire il file e Write per scriverlo. Ma qui dipende da quello che ci vuoi salvare dentro. Che dati contiene la griglia?
Per disabilitare la X metti questo in un modulo:
codice:
Option Explicit
Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Public Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Public Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As Long
Public Const MF_REMOVE = &H1000&
Public Const MF_ENABLED = &H0&
Public Const MF_INSERT = &H0&
Public Const SC_CLOSE = &HF060&
Public Const SC_MINIMIZE = &HF020&
Public Const SC_MAXIMIZE = &HF030&
Public Const SC_RESTORE = &HF120&
Public Enum MenuTypes
mnuClose = SC_CLOSE
mnuMinimize = SC_MINIMIZE
mnuMaximize = SC_MAXIMIZE
mnuRestore = SC_RESTORE
End Enum
Public Sub RemoveFormMenu(myForm As Form, TarghetMnu As MenuTypes)
' Disabilito il menu desiderato!
Call RemoveMenu(GetSystemMenu(myForm.hwnd, 0), TarghetMnu, MF_REMOVE)
' Ridisegno i menu!
DrawMenuBar myForm.hwnd
End Sub
e richiami la RemoveFormMenu nel load della form dove vuoi disabilitare la X.