Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> Visual Basics Programmering >> Content

    Hur man skapar en resolution Oberoende Frame i VB.NET

    . Visual Basic NET eller VB.NET , är en dator programmeringsspråk implementeras på NET Framework . . Du kan använda VB.NET för att skapa komplexa former . Men , ett formulär skapas för standard VGA-upplösning ( 640 x 480 ) tar bara en del av skärmen med en högre upplösning . Även om detta är normalt , kanske du vill att formuläret ska ha en storlek och position proportionell med upplösningen . Dessa former kallas upplösningsoberoende ramar och är relativt lätt att skapa . Saker du behöver Review, Visual Basic , någon version
    Visa fler instruktioner
    1

    Högerklicka någonstans på skrivbordet och välj "Egenskaper . " Gå till "Inställningar" -fliken och ändra skärmupplösningen till " 800 x 600 . " Du kommer att använda denna lilla resolution för att skapa oberoende av upplösning ram .
    2

    Öppna Visual Studio och starta ett nytt projekt . Den " Form1 " formen skapas automatiskt Addera 3

    Gå till formulärets modulen och klistra in koden för att göra formuläret oberoende av upplösning : .

    Option Explicit

    Dim MyForm Som FRMSIZE

    Dim DesignX As Integer

    Dim designy As Integer

    Private Sub Form_Load ( ) katalog

    Dim ScaleFactorX As Single , ScaleFactorY som enda " skalningsfaktorer

    " Storlek på Form i pixlar vid utformningen upplösning

    DesignX = 800

    designy = 600

    RePosForm = Sant ' Flagga för positionering Form

    DoResize = False ' Flagga för resize-händelse

    ' Konfigurera skärmen värderar

    Xtwips = Screen.TwipsPerPixelX

    Ytwips = Screen.TwipsPerPixelY

    Ypixels = Screen.Height /Ytwips ' Y pixlar

    Xpixels = Screen.Width /Xtwips "X Pixel resolution

    " Bestäm skalningsfaktorer

    ScaleFactorX = ( Xpixels /DesignX ) katalog

    ScaleFactorY = ( Ypixels /designy ) katalog

    scaleMode = 1 ' twips

    " Exit Sub ' avkommenterar att se hur Form1 ser utan storleksändring

    Resize_For_Resolution ScaleFactorX , ScaleFactorY , Me

    Label1.Caption = " Aktuell resolutionen " & Str $ ( Xpixels ) + _

    " med" + Str $ ( Ypixels )

    MyForm.Height = Me.Height ' Minns den nuvarande storleken

    MyForm.Width = Me.Width

    End Sub

    Private Sub Form_Resize ( )

    Dim ScaleFactorX As Single , ScaleFactorY As Single
    p Om inte DoResize Then ' För att undvika oändlig loop DoResize

    = Sant

    Exit Sub

    End If

    RePosForm = False

    ScaleFactorX = Me.Width /MyForm.Width " Hur mycket förändring ?

    ScaleFactorY = Me.Height /MyForm.Height

    Resize_For_Resolution ScaleFactorX , ScaleFactorY , Me

    MyForm.Height = Me.Height ' Minns den nuvarande storleken

    MyForm.Width = Me.Width

    End Sub

    Private Sub Command1_Click ( ) katalog

    Dim ScaleFactorX As Single , ScaleFactorY As Single

    DesignX = Xpixels

    designy = Ypixels

    RePosForm = Sant

    DoResize = False

    'Konfigurera skärmen värderar

    Xtwips = Screen.TwipsPerPixelX

    Ytwips = Screen.TwipsPerPixelY

    Ypixels = Screen.Height /Ytwips ' Y pixlar

    Xpixels = Screen.Width /Xtwips "X Pixel resolution

    " Bestäm skalningsfaktorer

    ScaleFactorX = ( Xpixels /DesignX )

    ScaleFactorY = ( Ypixels /designy ) katalog

    Resize_For_Resolution ScaleFactorX , ScaleFactorY , Me

    Label1.Caption = " Aktuell resolutionen " & Str $ ( Xpixels ) + _

    " med" + Str $ ( Ypixels ) katalog

    MyForm.Height = Me.Height ' Minns den nuvarande storleken

    MyForm.Width = Me.Width

    End Sub
    4

    Lägg alla de kontroller du vill testa till formuläret . Du kan lägga till etiketter , kommandoknappar och bildblock . Du måste göra detta för att testa om alla element i formuläret justera deras storlek korrekt .
    5

    Gå till " Project " -menyn och välj " Lägg till modul .... " Klicka på " Add " för att lägga till den nya modulen till ditt projekt
    6

    Gå till den nya modulen och klistra in koden för att automatiskt justera proportionerna av formuläret i förhållande till skärmupplösning : .

    Offentliga Xtwips As Integer , Ytwips As Integer

    Public Xpixels As Integer , Ypixels As Integer

    Typ FRMSIZE

    höjd så länge

    Bredd As Long

    End Typ

    Public RePosForm As Boolean

    Public DoResize As Boolean

    Sub Resize_For_Resolution ( ByVal SFX As Single , _

    ByVal SFY As Single , MyForm Som Form ) katalog

    Dim I As Integer

    Dim SFFont As Single

    SFFont = ( SFX + SFY ) /2 ' genomsnittlig skala

    'Storlek kontrollerna för den nya upplösningen

    On Error Resume Next ' för skrivskyddade eller obefintliga egenskaper

    MyForm

    For i = 0 att räkna . - 1

    Om typeof . Controls ( I ) Är ComboBox Then ' inte kan ändra

    Höjd
    . Controls ( I ) . Vänster = . Controls ( I ) . Vänster * SFX

    . Kontroller ( I) . Top = . kontroller ( I) . Top * SFY

    . Controls ( I). Bredd = . kontroller ( I). Bredd * SFX

    Else

    . Kontroller ( I) . Flytta. kontroller ( I) . Vänster * SFX , _

    . kontroller ( I) . Top * SFY , _

    . kontroller ( I) . bredd * SFX , _

    . Kontroller ( i ) . Höjd * SFY

    End If

    " ändra storlek och flytta innan du byter FontSize

    . Kontroller ( i ) . fontsize = . Kontroller ( i ) . FontSize * SFFont

    Nästa jag
    p Om RePosForm Sedan

    " nu storlek Form

    . flytta . Vänster * SFX , . Top * SFY , . bredd * SFX , . Höjd * SFY

    End If

    End With
    Sub

    End
    7

    Testa din nya form genom att köra den under olika skärmupplösningar . Den bör ta upp samma skrivbord område och behålla sin position .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Hur man gör Random Numbers i Visual Basic
    ·Hur man använder en bildkarta i Visual Studio
    ·Hur man skickar e-post till VB.Net System Mail
    ·Vb Net SQL Server Tutorial
    ·Hur Läs XML & befolka textrutor
    ·Hur fixar kolumner i DataGrid
    ·Visual Basic program
    ·Hur man skriver en fil i VB6
    ·Hur komma åt data i en DataSet Object
    ·Hur man skickar en tangenttryckning för att ut i VB
    Utvalda artiklarna
    ·Inaktivera en server klient Tangentbord Använda Java
    ·Sessions Brutet i PHP
    ·Java IsDate Funktion
    ·Django Vs. Perl
    ·Hur man skapar en anpassad knapp i PHP
    ·Hur man sätter in en bild i ett HTML- e-post Använda …
    ·Hur man lägger till datum i Java
    ·Den viktiga roll för datavetenskap i vardagen
    ·Hur man tar bort nollor i Java rekursion
    ·Hur man gör ett block i PHP Nuke
    Copyright © Dator Kunskap http://www.dator.xyz