Autor
|
Thema: Schriftarten auflisten/auslesen (640 mal gelesen)
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 04. Mrz. 2017 23:54 <-- editieren / zitieren --> Unities abgeben:
|
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 05. Mrz. 2017 12:55 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 05. Mrz. 2017 13:25 <-- editieren / zitieren --> Unities abgeben:
Danke. Den Würgaround über Excel hatte ich schon mir schonmal überlegt (hab sowas in Excel schonmal gemacht), wollte das aber eigentlich nicht. Wegen sowas nochmal eine zusätzliche Anwendung starten...naja. Mir wird wohl nichts anderes übrig beiben. Och man, es nervt was DS da zusammenstümpert. Das Catia sowas nicht von sich aus zur Verfügung stellt ist... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 05. Mrz. 2017 15:16 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 12. Mrz. 2017 12:49 <-- editieren / zitieren --> Unities abgeben:
|
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 12. Mrz. 2017 15:40 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 25. Mrz. 2017 21:59 <-- editieren / zitieren --> Unities abgeben:
Ich meld mich mit meinem Problem nochmal zurück. Da ich bisher doch auf Excel sehr gut verzichten kann, versuch ich das nun auch hier nochmal mit API. Ich arbeite mit Windows7/Catia V5R21 und programmiere in VB(A). Kannst du mir noch einen Hinweis geben, wie ich die API richtig anwende? Der Code im verlinkten Beispiel erscheint mir nicht ganz vollständig. [Diese Nachricht wurde von White-Fox am 25. Mrz. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 26. Mrz. 2017 00:33 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 26. Mrz. 2017 10:39 <-- editieren / zitieren --> Unities abgeben:
Hallo joehz Ich meine das mit den Common Dialogs. http://catia2.cad.de/index.php/de/artikel-und-beispiele/287-3-04-common-dialogs-choosefont Ich hab mal versucht, das Beispiel einfach in eine UF mit zwei Buttons zu kopieren und laufen zu lassen. Dabei meckert der Kompiler herum, daß er die Funktion CDlgChooseFont() nicht findet. Ich hab nirgendwo einen Hinweis gefunden, wo diese deklariert ist. Allerdings hab ich sowieso das Gefühl, daß die Codeschnipsel in dem Beispiel nicht ganz vollständig sind. Die API mit dem ChooseColor-Dialog z.B. ist im entsprechenden Artikel auch nicht ganz vollständig beschrieben. Ich bin dann mal dem Windows-API-Index-Link gefolgt, ich hab aber keine Ahnung wo ich da das richtige finden soll. Irgendwas wie ChooseFont o.ä. ist da jedenfalls nicht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 26. Mrz. 2017 11:59 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
|
White-Fox Mitglied E-Techniker
Beiträge: 24 Registriert: 23.01.2017
|
erstellt am: 26. Mrz. 2017 13:03 <-- editieren / zitieren --> Unities abgeben:
Ach, hinter dem Bildchen verbirgt sich ein Link...nö, hab ich nicht gesehen. Aber wenn ich den Code dahinter einbinde, ist zwar die Funktion CDlgChooseFont() deklariert, innerhalb derrer jedoch wird eine Funktion CreateFontIndirect() aufgerufen-und da meckert der Compiler wieder. Edit: Ich habs jetzt aber doch hinbekommen. Vielen Dank für den Hinweis auf die API. [Diese Nachricht wurde von White-Fox am 26. Mrz. 2017 editiert.] [Diese Nachricht wurde von White-Fox am 26. Mrz. 2017 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 26. Mrz. 2017 13:23 <-- editieren / zitieren --> Unities abgeben: Nur für White-Fox
Hi Fox, die Beispiele bauen aufeinander auf. Manche Deklarationen finden sich in den Beispielen davor. Nachfolgend die Deklaration für CreateFontIndirect, u.a.:
Code:
Option ExplicitPublic Type POINTAPI x As Long y As Long End Type Public Type RECT Left As Long Top As Long Right As Long Bottom As Long End Type Public Declare Function SetTextColor Lib "gdi32" (ByVal hdc As Long, ByVal crColor As Long) As Long Public Declare Function CreateFontIndirect Lib "gdi32" Alias "CreateFontIndirectA" (lpLogFont As LOGFONT) As Long Public Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long Public Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long Public Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long Public Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT, ByVal bErase As Long) As Long Public Const WM_SETFONT As Long = &H30 Public Const strVersion As String = "V1.2" 'open and save dialogs; ChooseFont/Color Public Const strMakro As String = "Common Dialogs" Sub CATMain() Dim i As Integer CDlgInitialize 0& 'no owner If CDlgOpenDlg(0&) Then MsgBox ofn.lpstrFile 'no owner If CDlgSaveDlg(0&, "c:\dummy.txt") Then MsgBox ofn.lpstrFile 'no owner For i = 1 To CATIA.Printers.Count UserForm1.ListBox1.AddItem CATIA.Printers.Item(i).Name Next UserForm1.Show End Sub Public Function Trim0(sName As String) As String 'if there is one or more trailing /0, trim the string If InStr(sName, Chr$(0)) Then Trim0 = Mid$(sName, 1, InStr(sName, Chr$(0)) - 1) Else Trim0 = sName End If End Function
Tschau, Joe ------------------ Inoffizielle Catia Hilfeseite Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |