ACC2000: วิธีการที่แปลง Twips เพื่อพิกเซล

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 210590 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขั้นสูง: ต้องเขียนโค้ดผู้เชี่ยวชาญ ทำงานร่วมกัน และทักษะ multiuser

บทความนี้ใช้ กับฐานข้อมูล Microsoft Access (.mdb) และโครงการ Microsoft Access (.adp)

ขยายทั้งหมด | ยุบทั้งหมด

สรุป

เนื่องจาก Microsoft Access เก็บคุณสมบัติขนาด/ตำแหน่งเป็น twips ในบางกรณี คุณอาจต้องแปลง twips เป็นพิกเซล เช่นเมื่อคุณเรียกใช้ฟังก์ชัน Windows API บทความนี้แสดงวิธีการนี้

Microsoft แสดงตัวอย่างการเขียนโปรแกรมเพื่อประกอบการอธิบายเท่านั้น และไม่มีการรับประกัน ไม่ว่าโดยชัดแจ้งหรือโดยนัย ทั้งนี้รวมถึง แต่ไม่จำกัดเพียงการรับประกันโดยนัยในเรื่องการซื้อขายหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ บทความนี้อนุมานว่าคุณมีความคุ้นเคยกับภาษาการเขียนโปรแกรมที่แสดงอยู่ รวมทั้งเครื่องมือต่างๆ ที่ใช้ในการสร้างและแก้จุดบกพร่องกระบวนการ วิศวกรฝ่ายสนับสนุนของ Microsoft สามารถช่วยอธิบายเกี่ยวกับหน้าที่การใช้งานของกระบวนการเฉพาะได้ แต่จะไม่ปรับเปลี่ยนตัวอย่างเหล่านี้เพื่อให้มีหน้าที่การใช้งานที่เพิ่มขึ้น หรือสร้างกระบวนการใดๆ เพื่อตอบสนองความต้องการอย่างใดอย่างหนึ่งของคุณโดยเฉพาะ

ข้อมูลเพิ่มเติม

คุณสามารถใช้ฟังก์ชัน ConvertTwipsToPixels() ต่อไปนี้เพื่อแปลง twips พิกเซล โปรดสังเกตว่า พิกเซลไม่เสมอสี่เหลี่ยม (ความสูงและความกว้างไม่เท่ากัน); ดังนั้น จึงเป็นจำเป็นต้องผ่านในการที่ต้องการ "ทิศทาง" การใช้ (แนวนอน หรือแนวตั้ง)
  1. สร้างโมดูใหม่ และพิมพ์ต่อไปนี้ในส่วน Declarations:
    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
    						
    หมายเหตุ:: คุณอาจมีบางฟังก์ชัน Microsoft Windows API ที่กำหนดไว้ในไลบรารีการเข้าถึงของ Microsoft ที่มีอยู่ ดังนั้น declarations ของคุณอาจจะซ้ำกัน ถ้าคุณได้รับข้อความแสดงข้อความข้อผิดพลาดชื่อกระบวนงานที่ซ้ำกัน เอาออก หรือข้อคิดเห็นออกคำสั่ง declarations ในรหัสของคุณ
  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
				

คุณสมบัติ

หมายเลขบทความ (Article ID): 210590 - รีวิวครั้งสุดท้าย: 17 กันยายน 2554 - Revision: 5.0
ใช้กับ
  • Microsoft Access 2000 Standard Edition
Keywords: 
kbinfo kbprogramming kbmt KB210590 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ 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