vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen Systemen 
Autor: Preisser
Datum: 04.05.09 20:56

OK, ich habe nun eine Lösung für das Problem gefunden (ich hab sie mir von einer API-Implementation des Winsock-Steuerelements abgeschaut )
Und zwar habe ich das "ByVal lpString As String" in der Deklaration der API-Funktion in "ByRef lpString As Any" geändert, sodass man auch ein Array übergeben kann. Die Funktion selbst rufe ich dann so auf:
Private Sub PrintW(hDC As Long, Text As String, X As Long, Y As Long)
Dim arrbty() As Byte
arrbty = Text
TextOut hDC, X / Screen.TwipsPerPixelX, Y / Screen.TwipsPerPixelY, arrbty(0), _
  Len(Text)
End Sub
Da ich so direkt das Array übergeben kann (das ja die einzelnen Zeichen als Unicode-Bytes enthält), muss ich somit nicht mehr auf die StrConv-Funktion zurückgreifen.

Diese Änderung funktioniert auch an der GetTextExtentPoint32W-API-Funktion für die TextWidth- und TextHeight-Methode.

Damit habe ich jetzt endlich einen universalen unicodefähigen Label, der auch auf asiatischen Betriebssystemen funktioniert, auch wenn VB dort Problemen mit Strings mit Bytewerten > 127 hat.
Ich hatte vorher auch schon mal in vb-Archiv nach einem Tipp zum Erstellen eines unicodefähigen Labels für VB6 gesucht, aber nichts gefunden. Sollte ich evtl. einen Tipp dazu erstellen?

Beitrag wurde zuletzt am 04.05.09 um 22:10:37 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme mit Unicode-Strings auf ausländischen Systemen3.155Preisser01.05.09 18:28
Teil 2: Probleme mit Unicode-Strings auf ausländischen Syste...2.049Preisser01.05.09 18:29
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...1.952Preisser04.05.09 20:56
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...1.880moDiag05.05.09 10:27
Re: Teil 2: Probleme mit Unicode-Strings auf ausländischen S...2.055ModeratorDieter05.05.09 10:40
Teil 1: Weitere Ergebnisse2.126Preisser23.05.09 16:23
Teil 2: Weitere Ergebnisse1.924Preisser23.05.09 16:24

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel