Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 24
  1. #11
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    709
    Ora ti devo abbandonare, ma se il problema è quello che ho indicato nel mio post precedente, prova ad inserire questo codice all'interno della form MDI:
    codice:
    Private Sub MDIForm_Load()
        Load myForm
        
        myForm.Visible = False
        
        myForm.Height = 6000
        myForm.Width = 8000
        
        myForm.Top = (myMDI.Height - myForm.Height) / 2
        myForm.Left = (myMDI.Width - myForm.Width) / 2
        
        myForm.Visible = True
    End Sub
    Secan

  2. #12
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Originariamente inviato da zetaweb
    Spero di essere stato chiaro.
    Riuscite ad aiutarmi!?!?
    Please?!!?
    Originariamente inviato da me
    Move (Screen.Width - Width) / 2, (Screen.Height - Height) / 2
    Funziona ?

  3. #13
    Per mabi. no non funziona.
    Per secan.
    Non ho form MDI.
    è un semplice form inziale impostato come width=800 e height=600.
    Border style=0
    e windows state= maximized

    Niente di più.
    Quando lo apro il form non è centrato.
    Come si fa?

  4. #14
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    se setti la StartUpPosition come CenterScreen?
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  5. #15
    L'ho fatto ma non se ne frega!!
    Dai raga possibile che non si riesce a trovare una soluzione?!!?

  6. #16
    Utente di HTML.it
    Registrato dal
    Aug 2003
    Messaggi
    709
    Originariamente inviato da zetaweb
    Per mabi. no non funziona.
    Per secan.
    Non ho form MDI.
    è un semplice form inziale impostato come width=800 e height=600.
    Border style=0
    e windows state= maximized

    Niente di più.
    Quando lo apro il form non è centrato.
    Come si fa?
    Scusa, ma la tua non è una contraddizione? Se apri la finestra in fullscreen (WindowStatus = Maximized) è perfettamente inutile settare delle dimensioni, perche la finestra non le cosidererà minimamente e si aprirà occupando tutto lo spazio disponibile. Inoltre l'unità di misura di VB6 non è il pixel ma un'altra (mi pare che si chiami twip) perciò dovrai impostare valori molto più alti di 800x600. Per finire ti riporto una parte della MSDN
    Progettazione di form indipendenti dalla risoluzione
    Per impostazione predefinita, le dimensioni di form e controlli di Microsoft Visual Basic non vengono modificate in base alla diversa risoluzione dello schermo. Ciò significa che un form creato con una risoluzione di 1024 per 768, se eseguito a una risoluzione di 640 per 480 può uscire dai bordi dello schermo. Per creare form e controlli in modo che mantengano le stesse proporzioni indipendentemente dalla risoluzione dello schermo, è necessario progettare i form con la risoluzione più bassa possibile o aggiungere codice che consenta di modificare i form.

    Il metodo più semplice consiste nel creare i form con una risoluzione di 640 per 480. Se si preferisce lavorare con una risoluzione maggiore, è importante tenere in considerazione il risultato ottenuto quando viene utilizzata una risoluzione inferiore. A tale scopo è possibile utilizzare la finestra Disposizione form per visualizzare un'anteprima della posizione e delle dimensioni del form e attivare quindi le guide per la risoluzione per verificare quale sarà l'area dello schermo visibile a una risoluzione inferiore. Per attivare o disattivare le guide per la risoluzione, fare clic con il pulsante destro del mouse sulla finestra Disposizione form e scegliere Guide risoluzione dal menu di scelta rapida.

    In Visual Basic la posizione del form in fase di esecuzione dipende dalla posizione in cui è stato creato in fase di progettazione. Un form posizionato nell'angolo in basso a destra dello schermo in fase di progettazione utilizzando una risoluzione di 1024 per 768 potrebbe non essere visibile con una risoluzione inferiore. Per evitare questo problema, è possibile definire in fase di progettazione la posizione di avvio del form tramite il comando Posizione avvio del menu di scelta rapida della finestra Disposizione form. In alternativa, è possibile impostare in fase di esecuzione la posizione del form nel codice della routine di eventi Form_Load:

    Private Sub Form_Load()
    Me.Move 0, 0
    End Sub

    L'utilizzo del metodo Move equivale all'impostazione delle proprietà Left e Top del form su 0, con la differenza che è sufficiente eseguire un solo passaggio.

    In Visual Basic, per il calcolo di dimensioni e posizione viene utilizzata l'unità di misura twip indipendente dalla periferica. Per impostare le dimensioni della visualizzazione in fase di esecuzione, è possibile utilizzare le proprietà TwipsPerPixelX e TwipsPerPixelY dell'oggetto Screen che consentono di regolare le dimensioni e la posizione di form e controlli nel codice:

    Private Sub SetControls()
    Dim X As Integer
    Dim Y As Integer

    X = Screen.TwipsPerPixelX
    Y = Screen.TwipsPerPixelY
    Select Case X, Y
    Case 15, 15
    ' Ridimensiona e sposta i controlli.
    txtName.Height = 200
    txtName.Width = 500
    txtName.Move 200, 200
    ' Aggiungere codice per altre risoluzioni.

    End Sub

    È inoltre necessario sapere qual è la posizione delle finestre di Visual Basic in fase di progettazione. La finestra Gestione progetti, se posizionata sulla parte destra dello schermo utilizzando una risoluzione alta, potrebbe non essere più accessibile quando si apre il progetto con una risoluzione inferiore.


  7. #17

    Centrare form

    Per centrare form:
    Tuoform.left = (Screen.Width - tuoform.Width) / 2

    Per maximizzare il form tutto schermo
    Tuoform.width = Screen.Width

    Semre se ho capito bene ciò che vuoi fare perchè non è molto chiaro.
    Ciao e fammi sapere

  8. #18
    Utente di HTML.it L'avatar di macse
    Registrato dal
    Dec 2002
    Messaggi
    138
    Il tuo problema penso che sia il fatto che lo massimizzi, in quel caso molto probabilmente non viene considerata la centratura perchè il form massimizzato non è centrato, semplicemente occupa tutto lo screen.
    Inoltre tu hai impostato una misura + piccola rispetto a un 1024x768 quindi lo posiziona in alto a destra per riempire tutto lo schermo e poi tu lo "blocchi" a 800x600.
    Prova a non mettere la proprietà Maximixed ma Normal. in quel caso allora il CenterScreen dovrebbe funzionare.
    Il CenterOwner serve se una finestra è aperta da un'altra finestra e quindi lo centra rispetto al Parent e non allo Screen.

    Macse

    e comunque come dice secan mi sa che devi usare una diversa unità di misura, sicuramente non pixel

  9. #19
    Utente di HTML.it L'avatar di goku370
    Registrato dal
    Oct 2003
    Messaggi
    569
    Ragazzi, io ho lasciato la risoluzione standard del form e ho impostato:
    -BorderStyle = None
    -StartUpPosition = CenterScreen
    -WindowsState = Maximized

    A me funziona... Il form è a tutto schermo con quasiasi risoluzione!!

  10. #20
    Non riesco a spiegarmi.
    Ci riprovo perchè è molto importante per me.
    Dunque:
    Se imposto come ha detto goku
    -BorderStyle = None
    -StartUpPosition = CenterScreen
    -WindowsState = Maximized
    Si visulizza il tutto schermo tranquillamente, ma quello che sta nel form non è centrato.
    Fate questa prova.
    Impostate la grandezza del form a 800x600 pixel. Mettete un pulsante nell'angolo in alto a sinistra ed un pulsante in basso a destra. Adesso avviate il programma.
    Se la vostra risoluzione è 800x600 i due pulsanti combaceranno con gli angoli del vostro schermo, e quindi tutto ok. Se la vostra risoluzione è maggiore, per esempio 1024, vedrete che i due pulsanti non saranno più centrati rispetto allo schermo, in quanto il form resta "bloccato" in alto a sinistra.
    Adesso la mia domanda è:
    Come faccio a centrare il form?
    Spero di essee stato chiaro questa volta. Se ancora non vi è chiaro ditemi in che modo posso spiegarmi meglio.
    Grazie a tutti.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.