Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Makro VBA Hintergrundfarbe beeinflusst Icon Farben?

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Makro VBA Hintergrundfarbe beeinflusst Icon Farben? (1689 mal gelesen)
Luti91
Mitglied
Projektleiter


Sehen Sie sich das Profil von Luti91 an!   Senden Sie eine Private Message an Luti91  Schreiben Sie einen Gästebucheintrag für Luti91

Beiträge: 29
Registriert: 18.06.2012

Inventor 2011
Blue Ciello Meridian Enterprise 2011
Bald: Inv 15 oder 16 und Keytech.<P>Dell Precision T3600
Intel Xeon E5-1620 @3,6GHz
16GB Ram
Nvidia Quadro 4000

erstellt am: 30. Okt. 2015 10:26    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Zusammen

Ich habe für den künftigen Einsatz im Betrieb ein Makro erstellt, welches die Hintergrundfarbe in der Bauteil oder Baugruppenumgebung ändern Kann. Wir nutzten diese Funktion oft um Bilder für Dokumentationen und Mails zu erstellen.

Die UserForm esitzt zwei Knöpfe mit der Aufschrift "Weiss" und "Blau"

Bei dem Weissen wird der 3D-Indicator ausgeblendet und der Hintergrund auf "Präsentation" umgestellt.

Code:
Private Sub weiss_Click()
ThisApplication.ColorSchemes.Item("Millennium").Activate
ThisApplication.DisplayOptions.Show3DIndicator = False
ThisApplication.ColorSchemes.Item("Präsentation").Activate
End Sub

Bei dem Blauen wird der 3D-Indicator eingeblendet und der Hintergrund auf "Millennium" umgestellt.

Code:
Private Sub blau_Click()
ThisApplication.ColorSchemes.Item("Präsentation").Activate
ThisApplication.DisplayOptions.Show3DIndicator = True
ThisApplication.ColorSchemes.Item("Millennium").Activate
End Sub

Jetzt tauchte aber bei beiden Buttons das Problem auf, dass die Farben der Icons zusätzlich auf Weiss gestellt werden und der Rechner braucht einige Momente bis er das gemacht hat. Anschliessend kann man hin- und herklicken ohne Wartezeit.

Was mache ich falsch, bzw. wieso werden diese Icons umgestellt. Ich möchte gerne dass die Farbe der Icons nicht beeinflusst werden. Für diese Funktion müssten ja folgende Sätzte noch irgendwo stehen.

Code:
ThisApplication.ColorSchemes.IconsColor = kAmberColorTheme
ThisApplication.ColorSchemes.IconsColor = kCobaltColorTheme

Ich hoffe Jemand kann mir bei dieser Misere weiterhelfen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

BernoAn
Mitglied



Sehen Sie sich das Profil von BernoAn an!   Senden Sie eine Private Message an BernoAn  Schreiben Sie einen Gästebucheintrag für BernoAn

Beiträge: 164
Registriert: 16.01.2014

erstellt am: 30. Okt. 2015 10:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Luti91 10 Unities + Antwort hilfreich

Hallo,

Bei mir werden die Icons nicht umgestellt?

Versuche mal den Code hier, der ist auch hier aus dem Forum

Code:

Public Sub Background_Switch()
    If ThisApplication.ColorSchemes.BackgroundType = kGradientBackgroundType Then
        ThisApplication.ColorSchemes.Item("Präsentation").Activate
        ThisApplication.ColorSchemes.BackgroundType = kOneColorBackgroundType
    Else
        ThisApplication.ColorSchemes.Item("Millennium").Activate
        ThisApplication.ColorSchemes.BackgroundType = kGradientBackgroundType
    End If
End Sub

Gruß Berno

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Luti91
Mitglied
Projektleiter


Sehen Sie sich das Profil von Luti91 an!   Senden Sie eine Private Message an Luti91  Schreiben Sie einen Gästebucheintrag für Luti91

Beiträge: 29
Registriert: 18.06.2012

Inventor 2011
Blue Ciello Meridian Enterprise 2011
Bald: Inv 15 oder 16 und Keytech.<P>Dell Precision T3600
Intel Xeon E5-1620 @3,6GHz
16GB Ram
Nvidia Quadro 4000

erstellt am: 30. Okt. 2015 11:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für den Tipp zum Code.
Es schaltet mir meine Icon-Farben dennoch um. Wenn die Icons auf "Gelb" umgestellt sind, wechselt Inventor sie kurzerhand in "Weiss" um. Ab dann läuft dann immer alles einwandfrei per Knopfdruck.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RolandD
Mitglied



Sehen Sie sich das Profil von RolandD an!   Senden Sie eine Private Message an RolandD  Schreiben Sie einen Gästebucheintrag für RolandD

Beiträge: 533
Registriert: 07.01.2005

i7-9700k
32GB DDR4-RAM
Nvidia RTX 2060
SSD 970 m.2
Win10-64 (21H2)
AIP 2020.3
Dell U3417W

erstellt am: 30. Okt. 2015 12:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Luti91 10 Unities + Antwort hilfreich

Hallo Luti91,

ich habe das Problem so gelöst, dass ich den Hintergrund auf weiß stelle.
Dazu habe ich ein PNG mit weißem Inhalt und stelle den Background um:

Code:
Dim oldBakground As BackgroundTypeEnum  'am Ende wieder herstellen
oldBakground = ThisApplication.ColorSchemes.BackgroundType

ThisApplication.ColorSchemes.ImageFullFileName = "..irgendwo gespeicherte \Backgrounds\weiss.png"
ThisApplication.ColorSchemes.BackgroundType = kImageBackgroundType  'weißer Hintergrund mit Bild "weiss.png"

' *** Ausdrucken
' oder irgend etwas machen

ThisApplication.ColorSchemes.BackgroundType = oldBakground  'Hintergrund wieder herstellen


------------------
Gruß Roland

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Luti91
Mitglied
Projektleiter


Sehen Sie sich das Profil von Luti91 an!   Senden Sie eine Private Message an Luti91  Schreiben Sie einen Gästebucheintrag für Luti91

Beiträge: 29
Registriert: 18.06.2012

Inventor 2011
Blue Ciello Meridian Enterprise 2011
Bald: Inv 15 oder 16 und Keytech.<P>Dell Precision T3600
Intel Xeon E5-1620 @3,6GHz
16GB Ram
Nvidia Quadro 4000

erstellt am: 02. Nov. 2015 09:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke für den Hinweis, das wäre eine gangbare Lösung. Jedoch klappt das mit dem oldBackground nicht. Bei mir im VBA-Editor lässt sich das nicht anwählen bzw. wird nicht erkannt. Kann das an unserer veralteten Inventor Version liegen?

[Diese Nachricht wurde von Luti91 am 02. Nov. 2015 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

axi92
Mitglied
Konstrukteur


Sehen Sie sich das Profil von axi92 an!   Senden Sie eine Private Message an axi92  Schreiben Sie einen Gästebucheintrag für axi92

Beiträge: 685
Registriert: 20.02.2010

Inventor 2014 64bit SP2
Vault Basic 2014 64bit SP1
HP Z200
Win 7 64bit
16GB RAM
CPU: i5 3,2GHz
GPU: Nvidia Quadro K600

erstellt am: 05. Nov. 2015 11:35    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Luti91 10 Unities + Antwort hilfreich

Hast du den:
Code:
Dim oldBakground As BackgroundTypeEnum
oldBakground = ThisApplication.ColorSchemes.BackgroundType

Auch definiert? das oldBakground ist einfach eine Variable
Kannst es auch "alterhintergrund" nennen xD

Aber ja das das immer umspringt ist normal hab ich auch ist einfach ein Fehler.
Habe es so gelöst das ich es eben immer beim Wechseln mit umstelle auf Bunte Symbole.

------------------
Grüße aus Wien
Philipp
Email: Base64 Encoded:
cGhpcHNfOTJAeWFob28uZGU=

[Diese Nachricht wurde von axi92 am 05. Nov. 2015 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz