ACC2000: Τρόπος μετατροπής Twips σε pixel

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 210590 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Για προχωρημένους: Απαιτεί ειδικό κωδικοποίησης, διαλειτουργικότητας και ικανότητες πολλών χρηστών.

Αυτό το άρθρο αφορά μια βάση δεδομένων της Microsoft Access (.mdb) και ένα έργο της Microsoft Access (.adp).

Ανάπτυξη όλων | Σύμπτυξη όλων

Περίληψη

Επειδή η Microsoft Access αποθηκεύει ιδιότητες διάσταση/θέση ως twips, σε ορισμένες περιπτώσεις ίσως χρειαστεί να μετατρέψετε twips pixel, όπως π.χ. όταν καλείτε μια συνάρτηση API των Windows. Αυτό το άρθρο σας δείχνει πώς να το κάνετε αυτό.

Η Microsoft παρέχει παραδείγματα προγραμματισμού μόνο για λόγους επεξήγησης, χωρίς να παρέχει καμία εγγύηση, σιωπηρή ή ρητή. Σε αυτά περιλαμβάνονται, ενδεικτικά, οι σιωπηρές εγγυήσεις εμπορευσιμότητας ή/και καταλληλότητας για συγκεκριμένο σκοπό. Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τη γλώσσα προγραμματισμού που παρουσιάζεται, καθώς και με τα εργαλεία που χρησιμοποιούνται για τη δημιουργία και τον εντοπισμό σφαλμάτων κώδικα διαδικασιών. Οι μηχανικοί υποστήριξης της Microsoft μπορούν να σας εξηγήσουν τη λειτουργικότητα μιας συγκεκριμένης διαδικασίας, αλλά δεν θα τροποποιήσουν αυτά τα παραδείγματα, για να παράσχουν πρόσθετες λειτουργίες, ούτε θα δημιουργήσουν διαδικασίες, για να καλύψουν τις συγκεκριμένες απαιτήσεις σας.

Περισσότερες πληροφορίες

Μπορείτε να χρησιμοποιήσετε την ακόλουθη συνάρτηση ConvertTwipsToPixels() για τη μετατροπή twips σε pixel. Σημειώστε ότι pixels δεν είναι πάντα τετράγωνο (το ύψος και το πλάτος δεν είναι το ίδιο), επομένως, είναι απαραίτητο να περάσει στην επιθυμητή "κατεύθυνση" Χρήση (οριζόντια ή κατακόρυφη).
  1. Δημιουργήστε μια νέα λειτουργική μονάδα και πληκτρολογήστε τα παρακάτω στην ενότητα "δηλώσεις":
    Option Explicit
    
    Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
    Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, _
      ByVal hdc As Long) As Long
    Declare Function GetDeviceCaps Lib "gdi32" (ByVal hdc As Long, _
      ByVal nIndex As Long) As Long
    
    Const WU_LOGPIXELSX = 88
    Const WU_LOGPIXELSY = 90
    						
    ΣΗΜΕΙΩΣΗ: Ίσως χρειαστεί μερικές συναρτήσεις API των Windows της Microsoft που ορίζονται σε μια υπάρχουσα βιβλιοθήκη Microsoft Access, επομένως, δηλώσεις σας ενδέχεται να είναι διπλότυπες. Εάν λάβετε ένα μήνυμα λάθους όνομα διαδικασίας διπλότυπες, καταργήστε ή σχόλια από την πρόταση δηλώσεις στον κώδικά σας.
  2. Πληκτρολογήστε την παρακάτω διαδικασία:
    Function ConvertTwipsToPixels (lngTwips as Long, _
       lngDirection as long) As Long
    
       'Handle to device
       Dim lngDC as long                        
       Dim lngPixelsPerInch as Long
       Const nTwipsPerInch = 1440
       lngDC = GetDC(0)
       
       If (lngDirection = 0) Then       'Horizontal
          lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSX)
       Else                            'Vertical
          lngPixelsPerInch = GetDeviceCaps(lngDC, WU_LOGPIXELSY)
       End If
       lngDC = ReleaseDC(0, lngDC)
       ConvertTwipsToPixels = (lngTwips / nTwipsPerInch) * lngPixelsPerInch
    
    End Function
    					
Για να καλέσετε τη συνάρτηση αυτή, μεταβιβάζουν τον αριθμό που θέλετε να μετατρέψετε twips και άλλη παράμετρος που δηλώνει την οριζόντια ή κατακόρυφη μέτρησης (0 για οριζόντιο, μη μηδενικό για κατακόρυφη). Ακολουθεί ένα δείγμα κλήσης:
Function ShowConvert()
   Dim lngOldTwips As Long
   lngOldTwips = 2377
   ShowConvert = ConvertTwipsToPixels(lngOldTwips, 0)
End Function
				

Ιδιότητες

Αναγν. άρθρου: 210590 - Τελευταία αναθεώρηση: Σάββατο, 17 Σεπτεμβρίου 2011 - Αναθεώρηση: 3.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Access 2000 Standard Edition
Λέξεις-κλειδιά: 
kbinfo kbprogramming kbmt KB210590 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:210590

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com