Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Makro Meldungsfenster im Hintergrund

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 SOLIDWORKS
  
Innovationstag mit SolidCAM und Plogmann bei HEDELIUS in Meppen
Autor Thema:  Makro Meldungsfenster im Hintergrund (10150 mal gelesen)
Bernd Knab
Mitglied



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

Beiträge: 373
Registriert: 16.01.2001

SWX 2020 SP5.0

erstellt am: 03. Mrz. 2010 09:18    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 seit der Umstellung auf Win7 und SWXSolidWorks 2010 x64 folgendes Problem:
Messageboxen, die von Makros erzeugt werden, oder Forms von Makros werden nicht im Vordergrund gezeigt, sondern sind hinter anderen Fenstern "versteckt".

Kennt jemand das Problem und wenn ja, gibt es einen Registry-Einstrag, der dafür sorgt, dass die Pop-Up Fenster wieder in den Vordergrund kommen?

Bisher habe ich mit folgendem Registry-Eintrag unter XP den Effekt wegbekommen:

[HKEY_CURRENT_USER\Control Panel\Desktop]
"ForegroundLockTimeout"=dword:00000000

Gruß Bernd

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

ad_man
Mitglied
freiberuflicher Entwicklungsing. (Fahrzeugtechnik, CSWP, CPPA))


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

Beiträge: 1366
Registriert: 20.12.2003

erstellt am: 03. Mrz. 2010 09:28    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Bernd,

hatte das gleiche Problem. Ich verwende jetzt immer die SendMsgToUser2-Methode
und seit dem habe ich das Fenster "greifbar".

------------------
==========
Gruß
Andreas
==========

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

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



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

Beiträge: 8756
Registriert: 02.03.2000

SunZu sagt:
Analysiere die Vorteile, die
du aus meinem Ratschlag ziehst.
Dann gliedere deine Kräfte
entsprechend und mache dir
außergewöhnliche Taktiken zunutze.

erstellt am: 03. Mrz. 2010 10: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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Bernd,

für Makroformulare, die auf 64Bit hinter dem Hauptfenster verschwinden, gibt es in der SolidWorks Knowledgebase den Eintrag S-013887 mit Titel How to avoid a modeless VBA form is hidden behind SolidWorks window on x64?. Da hängen zwei Beispielmakros namens ModalOnX64.swp und SldWorksIsX64.swp dran, die demonstrieren, wie man die Forms wieder nach vorne bekommt.

Ist leider nicht ganz trivial und so wie ich das gesehen habe auch nicht als generische Funktion vorhanden, aber immerhin ein Ansatz.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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

Bernd Knab
Mitglied



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

Beiträge: 373
Registriert: 16.01.2001

SWX 2020 SP5.0

erstellt am: 03. Mrz. 2010 11:24    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 Andreas und Stefan,

danke für die schnellen Hinweise. Werde mir beide genauer anschauen.

Gruß Bernd

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

Bernd Knab
Mitglied



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

Beiträge: 373
Registriert: 16.01.2001

SWX 2020 SP5.0

erstellt am: 05. Mrz. 2010 10:14    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,

ich habe jetzt mit den beiden Tips herumgespielt.

SendMsgToUser2 funktioniert problemlos.

Bei den Formularen habe ich noch Probleme:
Ich habe nur ein Formular im Makro. Dies wird in den Vordergrund gestellt.
Wenn ich jetzt jedoch ein SendMsgToUser2 oder Msgbox aufrufe mit geöffnetem Formular wird dieses geschlossen, das ganze Makro beendet und ich lande wieder bei Solidworks.

Ich habe festgestellt, dass dieser Effekt abhängig von den Windows Userrechten ist. Bei einem Standard Windows-User wird nach dem Schließen der SendMsgToUser-Box wieder das Formular vorgestellt und das Makro läuft weiter. Bei mir mit lokal Admin Rechten, wird das Makro wie oben beschrieben beendet.

hat jemand eine Idee, wie ich eine Mitteilung an den User schicken kann, ohne dass ich dazu ein 2. Formular erstellen muss?

Gruß Bernd

[Diese Nachricht wurde von Bernd Knab am 09. Mrz. 2010 editiert.]

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

businessbert
Mitglied
Konstruktion, Projektleitung, CadAdmin


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

Beiträge: 225
Registriert: 30.04.2009

SolidWorks Premium 2015 SP4 - SNL
Windows 7 Prof. 64-bit
Intel Xeon CPU E5-1620 3.50GHz
NVIDIA Quadro K4200
16GB Ram
Samsung SSD SM84 512GB

erstellt am: 09. Jun. 2010 21:27    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Stefan,
Hallo an alle,

verzeiht mir dass ich diesen Thread wieder aus der Versenkung hole, aber  ich blick bei den beiden Beispielen aus der Knowledgbase nicht durch...
Meine bisherigen copy and paste Versuche hatten immer nur eine Auswirkung: 
Leider scheitert es wohl an den Grundlagen... mit meinen Lernen-durch-beobachten-API-Kenntnissen kann ich mir nicht so recht erklären wie das arbeiten sollte, bzw ich es in meine Makro-Codes einpflegen könnte.   


Ich poste hier mal den Code, vielleicht findet ja jemand die Zeit mir den Code etwas zu erklären und mir einen Schubs in die richtige Richtung zu geben.


Mit hoffnungsvollen Grüßen
Robert


SldWorksIsX64
Modul subMain:

Zitat:
Option Explicit

Dim swApp As SldWorks.SldWorks

Public Function SldWorks_IsX64(ByRef swApp As SldWorks.SldWorks) As Boolean

    Dim strExeName    As String
    Dim lBinaryType  As Long
   
    strExeName = swApp.GetExecutablePath
    GetBinaryType strExeName & "\sldworks.exe", lBinaryType
    SldWorks_IsX64 = (lBinaryType = SCS_64BIT_BINARY)
   
End Function

----
Sub main()

    Dim bIsX64 As Boolean
       
    Set swApp = Application.SldWorks
       
    ' Determine whether we are running SolidWorks x64.
    bIsX64 = SldWorks_IsX64(swApp)
   
    Debug.Print "is x64 = " & bIsX64
       
End Sub


Modul Win32:

Zitat:
Option Explicit

Public Const SCS_32BIT_BINARY = 0
Public Const SCS_64BIT_BINARY = 6

Public Declare Function GetBinaryType Lib "kernel32" Alias "GetBinaryTypeA" (ByVal sFileName As String, ByRef BinType As Long) As Long



------------------

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

THSEFA
Mitglied
Konstrukteur/CAD-Admin


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

Beiträge: 1141
Registriert: 27.11.2002

SWX 2020 SP5.0 Premium
Windows 10 Pro 64Bit
Citrix VM
Intel(R) XEON(R) Gold 6146 CPU @ 3.20GHz
24 GB Ram<P>Windows 10 Pro 64Bit

erstellt am: 02. Aug. 2010 13: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 Nur für Bernd Knab 10 Unities + Antwort hilfreich

Da ich aktuell genau vor dem gleichen Problem mit dem "verschwundenen" Formularfenster stehe, habe ich diesen Thread aus der Versenkung geholt. Mein Wissen und Können reicht hier leider nicht mehr aus. Vielleicht könnte jemand, der Ahnung von dem Thema hat uns "Halbwissenden" einen kleinen Schubs in die richtige Richtung geben... 

------------------
Viele Grüße, THSEFA 

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 02. Aug. 2010 13:48    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 Bernd Knab 10 Unities + Antwort hilfreich

Ich habe das Problem auch vor kurzem bei einem Admin Kollegen an einem anderen Standort gehabt.

Ich habe das Formular mit Hilfe der Windows API Fenster immer im Vordergrund anzeigen gelöst.

Das hat zumindest auf dem 64bit Rechner meines Kollegen prima Funktioniert.

Ach ja, das Fensterhandle habe ich mit der Windows API Fensterhandle anhand der Titelzeile ermitteln ermittelt.

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks API Snippets

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

Bernd Knab
Mitglied



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

Beiträge: 373
Registriert: 16.01.2001

SWX 2020 SP5.0

erstellt am: 02. Aug. 2010 14:36    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


Makro_Formulare.JPG

 
Hallo Zusammen,

ich habe aus den von Stefan genannten Makros die Module Globals, Utils und Win32 in meine Makros eingebunden.
Dann habe ich meine Formulare aufgerufen mit:

Sub main()
    Dim swFrame      As SldWorks.Frame

    Set swApp = Application.SldWorks
    bIsSolidWorksX64 = SldWorks_IsX64(swApp)
    Set swFrame = swApp.Frame
    hWndSolidWorks = swFrame.GetHWnd
   
    Unload FormKonvertierung
    FormKonvertierung.Show vbModeless

End Sub

Gruß Bernd

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

THSEFA
Mitglied
Konstrukteur/CAD-Admin


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

Beiträge: 1141
Registriert: 27.11.2002

SWX 2020 SP5.0 Premium
Windows 10 Pro 64Bit
Citrix VM
Intel(R) XEON(R) Gold 6146 CPU @ 3.20GHz
24 GB Ram<P>Windows 10 Pro 64Bit

erstellt am: 04. Aug. 2010 09:23    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 Bernd Knab 10 Unities + Antwort hilfreich


SchriftfeldmakroFehler.jpg


SchriftfeldmakroFehler.zip

 
Hallo an alle anderen fleißigen Helfer,
ich habe versucht, nach Bernd´s Anleitung unser Schriftfeldmakro zu ändern. Leider kommt jetzt eine Fehlermeldung, die ich mir nichts weiter sagt. Darf ich euch nochmal um  Hilfe bitten?

------------------
Viele Grüße, THSEFA 

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

Bernd Knab
Mitglied



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

Beiträge: 373
Registriert: 16.01.2001

SWX 2020 SP5.0

erstellt am: 04. Aug. 2010 09:27    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 THSEFA,

ergänze einmal:

DIM swapp as object

geht es dann?

Gruß Bernd

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

THSEFA
Mitglied
Konstrukteur/CAD-Admin


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

Beiträge: 1141
Registriert: 27.11.2002

SWX 2020 SP5.0 Premium
Windows 10 Pro 64Bit
Citrix VM
Intel(R) XEON(R) Gold 6146 CPU @ 3.20GHz
24 GB Ram<P>Windows 10 Pro 64Bit

erstellt am: 04. Aug. 2010 09:51    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Bernd,
ja dann läuft das Makro.

Allerdings musste ich feststellen, dass es den ursprünglichen Zweck nicht erfüllt. Wenn ich morgens mein SWX starte, ist beim ersten benutzen eines Makros das entsprechende Fenster hinter dem von SWX. Erst wenn ich das SWX-Fenster verkleinere und dann das Makrofenster schließe (oder aber nach vorn hole und das Makro weiter ausführe) kann ich beim nächsten Aufrufen eines Makros sicher sein, dass das entsprechende Fenster nach vorn kommt. 

------------------
Viele Grüße, THSEFA    

[Diese Nachricht wurde von THSEFA am 04. Aug. 2010 editiert.]

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

THSEFA
Mitglied
Konstrukteur/CAD-Admin


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

Beiträge: 1141
Registriert: 27.11.2002

SWX 2020 SP5.0 Premium
Windows 10 Pro 64Bit
Citrix VM
Intel(R) XEON(R) Gold 6146 CPU @ 3.20GHz
24 GB Ram<P>Windows 10 Pro 64Bit

erstellt am: 10. Aug. 2010 13:53    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 Bernd Knab 10 Unities + Antwort hilfreich

Unser Support konnte uns bei dem Problem leider auch nicht viel weiterhelfen. Sie haben aber einen SPR ausfindig gemacht und uns mit eingeklinkt. Wer mag kann sich hier ranhängen, vielleicht geht´s dann ja schneller!

SPR-Nr:466785

------------------
Viele Grüße, THSEFA 

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

Winni-two
Mitglied
Ing. Maschb.


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

Beiträge: 154
Registriert: 12.03.2010

SW 2021 SP5
Intel Xenon W2135 @3.7GHz
Win 10 64 bit
Graka: Nvidia Quadro P4000
32 GB Ram

erstellt am: 16. Okt. 2010 00:28    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 Bernd Knab 10 Unities + Antwort hilfreich

Da wir in unserer Firma endlich auf Windows 7 und 64bit umgestellt haben und ich einige Makros laufen habe, brauche ich unbedingt eine Lösung um die Userforms in den Vordergrund zu bringen. Da ich aber mit diesem Beitrag zu keiner Lösung kam, habe ich für mich einen gangbaren Weg gefunden um das Userform vom Makro im Vordergrund zu bringen. Und zwar starte ich als ersten Befehl im Userform unteres Makro. In diesem habe ich dann die verschiedenen Namen meiner Userforms eingefügt. Das klappt bei mir zufriedenstellend.


Declare Function SetWindowPos Lib "user32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Sub main()
    whwnd = FindWindow(vbNullString, "Ansicht drehen")
    Call SetWindowPos(whwnd, -1, 0, 0, 0, 0, 3)
    whwnd = FindWindow(vbNullString, "Schriftkopf")
    Call SetWindowPos(whwnd, -1, 0, 0, 0, 0, 3)
    whwnd = FindWindow(vbNullString, "Farben")
    Call SetWindowPos(whwnd, -1, 0, 0, 0, 0, 3)
    whwnd = FindWindow(vbNullString, "Drucken")
    Call SetWindowPos(whwnd, -1, 0, 0, 0, 0, 3)
End Sub

Hoffe konnte dem Einen oder Anderen damit helfen
Gruß Winni

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 16. Okt. 2010 11:39    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Winni,
und herzlich Willkommen im Forum insbesondere deshalb, weil du dich als erstes gleich mit einer Hilfe statt einer Frage beteiligst.

Dieses hier beschriebene Problem haben auch viele User die nicht viele Programmierkenntnisse haben, wie auch ich.
Mal zum Verständnis. Muss dein Makro zuerst vor dem eigentlichen gewünschten gestartet werden oder wird es in bestehende Makros integriert?
Wenn es integriert wird, könntest du vielleicht dein kpl. Makro als Anhang (z.B. Schriftkopf) hier veröffentlichen, damit der Gelegenheitsprogrammierer genau weiß, wo er deine Zeilen einfügen muss.

Für weitere Hilfestellung schon mal besten Dank.

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Winni-two
Mitglied
Ing. Maschb.


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

Beiträge: 154
Registriert: 12.03.2010

SW 2021 SP5
Intel Xenon W2135 @3.7GHz
Win 10 64 bit
Graka: Nvidia Quadro P4000
32 GB Ram

erstellt am: 16. Okt. 2010 13:15    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 Bernd Knab 10 Unities + Antwort hilfreich


Desktop.zip

 
Hallo Andi

Ich hoffe das mit dem Anhang klappt. Habe als Beispiel das "Ansicht Drehen" Makro beigefügt - Herzlichen Dank an http://solidworks.cad.de.  Von da hab ich es und etwas für mich angepasst.
Die Wichtige Stelle befindet sich im Formular ansichtDrehen:

Private Sub UserForm_Initialize()
Dim boolstatus As Boolean
Set swApp = CreateObject("SldWorks.Application")
boolstatus = swApp.RunMacro("C:\Macros\Aic_NachVorn.swp", "vv", "main")
...........

Dort rufe ich das zweite Makro auf "Aic_NachVorn.swp" das mir dann das Userform Mit dem Formulartitel: "Ansicht drehen" in den Vordergrund bringt. Das mach ich so mit all meinen Macros die ein Userfom enthalten.

Ich hoffe es wurde etwas klarer

Gruß Winni

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 16. Okt. 2010 17:44    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Winni,
besten Dank für deine Hilfe.
Habe mir gleich deine Makros kopiert und ausgeführt, allerdings zunächst mit 2 Fehler.
Erstens weil mein Pfad zu den Makros nicht stimmte den du aber vorgibst, und zweitens weil eigenartigerweise die gtswUtilities.tlb nicht gefunden wurde.
Als ich dies korrigiert hatte, funktionierte deine Kombi auch bei mir.
Rufe ich danach ein Macro von mir auf (noch nicht modifiziert), erscheint es sofort vor dem SW-Fenster.
Es geht also nach dem Start von SW nur um den ersten Aufruf eines Macros.

Kann man dein separates Makro nicht in die bestehenden Makros integrieren, um den Konflikt mit dem Pfad zu umgehen?
Jeder hat doch andere Pfadverläufe.
Bei uns haben wir sowohl zentral auf dem Server Makros, als auch direkt im Installationspfad von SW, um die Makros auch per Tastatur erreichen zu können. Da müsste ich das gleiche Makro in zwei Ausführungen erstellen.

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

currie
Mitglied
Betriebsmittelkonstrukteur


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

Beiträge: 83
Registriert: 10.03.2005

WIN10 / SWX2020

erstellt am: 18. Okt. 2010 08:06    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo

Ich stehe vor dem gleichen Problem. Bis jetzt habe ich mir immer so geholfen.

Str+Alt+Enfernen >> Task-Manager >> Anwendungen >> Makro auswählen R-Klick >> In Vordergrund.

Dann ist bei mir das Makro für diese Sitzung im Vordergrund.
Nach einem Neustart von Solidworks ist es wieder im Hintergrund.

Die hier bereitgestellten Lösungen waren bei mir nicht erfolgreich, liegt aber an meinen VB Kenntnissen.

Currie


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

THSEFA
Mitglied
Konstrukteur/CAD-Admin


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

Beiträge: 1141
Registriert: 27.11.2002

SWX 2020 SP5.0 Premium
Windows 10 Pro 64Bit
Citrix VM
Intel(R) XEON(R) Gold 6146 CPU @ 3.20GHz
24 GB Ram<P>Windows 10 Pro 64Bit

erstellt am: 18. Okt. 2010 09:46    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 Bernd Knab 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Winni-two:
...Hoffe konnte dem Einen oder Anderen damit helfen...

  DANKE! DANKE! DANKE! 

PS: Das ist mal ein Einstand! Erstklassig! Die ersten U´s sind vollkommen zu Recht verdient. Mach ruhig weiter so...

------------------
Viele Grüße, THSEFA 

PS: Wer kann bei mir bei Druckerproblem helfen?

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 30. Dez. 2010 12:41    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo,
nun hab ich vom Weihnachsmann einen neuen PC mit Win7-64bit bekommen und habe jetzt auch das Problem mit den Formularen.
Der Plan von Winni geht ja ganz gut bei den Userforms. Nur bei den mit msgbox erzeugten Eingabeaufforderungen und Meldungen will das nicht funktionieren.
Weiß vielleicht jemand noch einen anderen Rat dazu?
Viele Grüße und kommt gesund ins neue Jahr...
Thomas

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

Andreas R.
Mitglied
Konstrukteur,

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

Beiträge: 2
Registriert: 10.01.2011

SWX Office Premium 2010 x64, SP4.0
WIN7 Ultimate 64bit
Intel(R)Core(TM)2 CPU 6600

erstellt am: 10. Jan. 2011 16:28    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Thomas5,

Im folgenden findest du eine abgeänderte Variante von Winni-two Code, da bei uns mehrere Leute Makros progen brauchten wir eine Version, die man direkt aus dem Makro heraus starten konnte.

Code:
Option Explicit

Declare Function SetWindowPos Lib "user32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Dim res As Long
Dim lRet As Long

Global Const SWP_NOMOVE As Long = 2
Global Const SWP_NOSIZE As Long = 1
Global Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Global Const HWND_TOPMOST As Long = -1
Global Const HWND_NOTOPMOST As Long = -2

Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

FormName.Show (False)

lRet = FindWindow(vbNullString, FormName.Caption)
res = SetWindowPos(lRet, HWND_TOPMOST, 0, 0, 0, 0, FLAGS)

End Sub


Wenn du dies an den Anfang in dein Makro schreibst, dann ist die Form im Vordergurnd.

Hoffe geholfen zu haben.

Gruß Andreas R.

[Diese Nachricht wurde von Andreas R. am 10. Jan. 2011 editiert.]

[Diese Nachricht wurde von Andreas R. am 08. Feb. 2011 editiert.]

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 13. Jan. 2011 12:28    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Andreas,
Dein Code will mit der MsgBox nicht klappen, weil ja der Programmablauf bei der MsgBox anhält und auf eine Eingabe wartet. Also kommt es gar nicht zur Ausführung der nachfolgeneden Befehlszeilen und das Fenster bleibt im Hintergrund.
Schade, so geht´s nicht...
Vielen Dank und frohes Schaffen wünscht
Thomas

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

Andreas R.
Mitglied
Konstrukteur,

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

Beiträge: 2
Registriert: 10.01.2011

SWX Office Premium 2010 x64, SP4.0
WIN7 Ultimate 64bit
Intel(R)Core(TM)2 CPU 6600

erstellt am: 08. Feb. 2011 13:48    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Thomas5,

da hast du recht, dass dieser Code nicht bei MsgBoxen funktioniert. Hier ging es auch eher um Userformen.
Aber für die MsgBox versuch einmal folgendes:

MsgBox "Text", vbSystemModal, "Captiontext"

Dies funktioniert bei uns soweit ganz gut.
Weitere Infos findest du aber auch "hier".

Gruß Andreas

PS: Ich habe meinen vorhergehenden Beitrag editiert, damit es nicht mehr verwirrt 

[Diese Nachricht wurde von Andreas R. am 08. Feb. 2011 editiert.]

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

Thomas5
Mitglied
Konstrukteur, SWX-Admin


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

Beiträge: 420
Registriert: 14.07.2003

SWX2013

erstellt am: 09. Feb. 2011 16: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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Andreas,
hab vielen Dank. Ich denke, so wird es funktionieren.
Viele Grüße
Thomas

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

uncleH
Mitglied



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

Beiträge: 15
Registriert: 16.03.2006

erstellt am: 04. Mrz. 2011 15:30    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 Bernd Knab 10 Unities + Antwort hilfreich

Hi Leute,

die Infos von Andreas auf Winni-Twos Basis haben mir bei dem Makro-Problem unter Win 7 64bit super geholfen.

Herzlichen Dank dafür.


Beste Grüße
Heiko


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

sleeping sun6
Mitglied
Technische Zeichnerin


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

Beiträge: 32
Registriert: 07.03.2007

SolidWorks 2009 x64 SP 4.0
Windows XP 64
Office 2003

erstellt am: 09. Mrz. 2011 10:33    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 Bernd Knab 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Andreas R.:
Hallo Thomas5,

Im folgenden findest du eine abgeänderte Variante von Winni-two Code, da bei uns mehrere Leute Makros progen brauchten wir eine Version, die man direkt aus dem Makro heraus starten konnte.

Code:
Option Explicit

Declare Function SetWindowPos Lib "user32" _
(ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long

Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Dim res As Long
Dim lRet As Long

Global Const SWP_NOMOVE As Long = 2
Global Const SWP_NOSIZE As Long = 1
Global Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Global Const HWND_TOPMOST As Long = -1
Global Const HWND_NOTOPMOST As Long = -2

Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

[b]FormName.Show (False)

lRet = FindWindow(vbNullString, FormName.Caption)
res = SetWindowPos(lRet, HWND_TOPMOST, 0, 0, 0, 0, FLAGS)

End Sub


Wenn du dies an den Anfang in dein Makro schreibst, dann ist die Form im Vordergurnd.

Hoffe geholfen zu haben.

Gruß Andreas R.

[Diese Nachricht wurde von Andreas R. am 10. Jan. 2011 editiert.]

[Diese Nachricht wurde von Andreas R. am 08. Feb. 2011 editiert.][/B]


Vielen Dank für diesen Code!
Das hat bei mir nun auch endlich den nervenden Fehler behoben!

Grüße
Susann

------------------
Viele Grüße
Susann

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 20. Mrz. 2011 15:21    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 Bernd Knab 10 Unities + Antwort hilfreich


Schriftfeldmakro-01.jpg


Schriftfeldmakro-03.jpg


schriftfeld-konf.zip

 
Hallo auch,
ich versuch mich jetzt auch mit der Integration von Andreas seinem Schnipsel in unser Schriftfeldmakro.
Leider habe ich dabei Probleme, von wegen an den Anfang des Makros schreiben.   

Wenn ich es in schriftfeld - frmSfInfo (Code) kopiere, bekomme ich beiliegende Fehlermeldung.
Wenn ich es in schriftfeld - schriftfeld1 (Code) kopiere, geht das Makro nicht mehr auf, es kommt aber auch keine Fehlermeldung.

Was mache ich falsch?
Für Tips schon mal Danke Schön.

Grüße, Andi   

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

DanielH
Mitglied
Dipl.-Ing. (BA) / Medizintechnik


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

Beiträge: 103
Registriert: 16.11.2009

Creo Elements/Pro 5.0 (M090)
Win 7 64bit
FX 2000
Xeon E31225 3.10GHz
8GB RAM

erstellt am: 21. Mrz. 2011 08:48    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 Bernd Knab 10 Unities + Antwort hilfreich


integriert.png

 
Hallo Andi,

ich habe es so integriert (siehe Bild). Dies funktioniert einwandfrei. Wiese hast Du denn 2x eine Sub Main()?

Viele Grüße,
Daniel

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 21. Mrz. 2011 19:34    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Daniel,
jo, das war es, da hätte ich auch selber drauf kommen können. 

Besten Dank auch an alle beteiligten.
Jetzt funktioniert es in SW2010 und SW2011 einwandfrei.

Sag mal, würdest du dein Schriftfeldmacro kpl. hier reinstellen (oder per PM)?
Ich bin nur Neugierig, was andere noch so alles einbauen.
Evtl. bekomme ich noch einige Anregungen.
An meinem habe ich ja auch noch etwas rumgepfriemeld.   

Bis denn,
Grüße, Andi   

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

DanielH
Mitglied
Dipl.-Ing. (BA) / Medizintechnik


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

Beiträge: 103
Registriert: 16.11.2009

Creo Elements/Pro 5.0 (M090)
Win 7 64bit
FX 2000
Xeon E31225 3.10GHz
8GB RAM

erstellt am: 22. Mrz. 2011 10:08    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 Bernd Knab 10 Unities + Antwort hilfreich


SchriftfeldDanielH.zip

 
Hallo Andi,

ist kein Geheimnis. Ich habe ja nur das eingebaut, was andere bereits erfunden haben (An dieser Stelle an Stefan herzlichen Dank für sein Makro und alle Anregungen durch seine Beispiele und auch an alle anderen, die in der Makrotauschbörse ihre Makros zur Verfügung stellen  ).

Viele Grüße,
Daniel

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 03. Apr. 2011 10:47    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo auch,
nachdem ich Andreas sein Schnipsel erfolgreich in mein Schriftfeldmakro integriert habe, klebt das Makro beim Öffnen links oben am Monitorrand.
Obwohl das Formular bei StartUpPosition auf 1-Fenstermitte gestellt ist.

Wie bekomme ich mein Fenster wieder in die Mitte?

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 03. Apr. 2011 12:44    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Andi,

ich denke mal, die Zeile:

res = SetWindowPos(lRet, HWND_TOPMOST, 0, 0, 0, 0, FLAGS)

setzt das Fenster auf 0,0.

Trag da doch mal andere Werte ein.

Gruß, Torsten

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 03. Apr. 2011 12:49    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 Bernd Knab 10 Unities + Antwort hilfreich

Ich nochmal.

Andererseits  spricht das gesetzte flag SWP_NOMOVE eigentlich gegen eine Positionsänderung.

Mmmmh, ???

Probier doch mal, die 0-Werte zu ändern.

Gruß, Torsten

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 03. Apr. 2011 12:59    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 Bernd Knab 10 Unities + Antwort hilfreich

Und nochmal:

Ich hatte inzwischen eine Quelle gesehen, in der die Deklarationszeilen für die Flag-Werte folgendermaßen geschrieben waren:

    Public Const SWP_NOSIZE = &H1
    Public Const SWP_NOMOVE = &H2


Hilft das?

Gruß, Torsten

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 03. Apr. 2011 13:23    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Torsten,
das mit den 0-len hatte ich vorher schon Probiert, ergibt keine Veränderung.

Wenn ich deinen letzten Vorschlag wie folgt übertrage, funktioniert das Makro noch, aber es gibt auch keine Positionsänderung.

Global Const SWP_NOMOVE As Long = &H2
Global Const SWP_NOSIZE As Long = &H1

Muss für das H1 bzw. H2 irgend eine Deklaration etc. stattfinden?

Evtl. fällt dir noch was ein.

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 03. Apr. 2011 13:32    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Andi,

was passiert, wenn Du die Zeile:

Global Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE

änderst in:

Global Const FLAGS = SWP_NOSIZE

und dann die beiden Nullen änderst?

Gruß, Torsten

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 03. Apr. 2011 13:44    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Torsten,
das Makro funktioniert weiterhin, bleibt aber immer noch links oben.
Egal ob ich die beiden oder alle vier 0-len verändere.

Das sträubt sich aber...

Gruß, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 03. Apr. 2011 13:53    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Andi,

setz die startupposition mal auf 2.

Gruß, Torsten

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 03. Apr. 2011 14:10    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 Bernd Knab 10 Unities + Antwort hilfreich

Hallo Torsten,
mit den vorherigen Änderungen ging es noch nicht, aber als ich alles wieder rückgängig gemacht hatte, war das Fenster jetzt schön mittig.
Dabei möchte ich schwören, das ich das auch schon versucht hatte.........

Nun, so funktionierts, Besten Dank auch.

Liebe Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Andi Beck
Ehrenmitglied V.I.P. h.c.
Konstrukteur



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

Beiträge: 2572
Registriert: 02.10.2006

Firma: SW 2023-4.0 + PDM Prof.
Windows 10 Pro 64bit, i9-11900
32 GbRAM, Quadro P2200
Home:
SW 2022-5.0
Passungstabelle von Heinz
Windows 11 Pro 64bit,
i7-12700K, 32 GbRAM,
GeForce GTX 1050Ti
Samsung C34H892, 3440x1440 Pixel

erstellt am: 03. Apr. 2011 14:33    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 Bernd Knab 10 Unities + Antwort hilfreich

Nochmal ich,
und weil es so schön ist, funktioniert auch 0 - Manuell.

Man muss nur entsprechende Werte bei Left und Top eingeben, dann kann beliebig positioniert werden.

Schöner Sonntag heute......

Grüße, Andi 

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 23. Apr. 2012 12:36    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 Bernd Knab 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Torsten Niemeier:

setz die startupposition mal auf 2.

Gruß, Torsten


Was ist die startupposition? Bei mir funktioniert das soweit ganz gut, bis auf die Fensterpositionierung. Ich würde die Position auch lieber auf "Fenstermitte" setzen als auf einen festen Wert, hier gibt es diverse Monitorkonfigurationen.

Piet

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

Torsten Niemeier
Ehrenmitglied V.I.P. h.c.
Maschinenbau Ingenieur



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

Beiträge: 3682
Registriert: 21.06.2001

"ZUSE I.36", 8 BIT, 32 Lämpchen, Service-Ölkännchen "ESSO-Super", Software: AO auf Kuhlmann-Parallelogramm-Plattform
** CSWP 04/2011 **
** CSWE 08/2011 **

erstellt am: 23. Apr. 2012 18:27    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 Bernd Knab 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Piet:

Was ist die startupposition?


StartUpPosition ist eine Eigenschaft einer Userform.
Üblicherweise eingestellt im Eigenschaftenfenster der Userform.

Gruß, Torsten

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

Piet
Mitglied
Konstruktionsleiter & Konstrukteur


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

Beiträge: 661
Registriert: 20.11.2001

SWx 2021

erstellt am: 24. Apr. 2012 10: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 Nur für Bernd Knab 10 Unities + Antwort hilfreich

So einfach kann das Leben sein! Danke für den Hinweis, jetzt klappt es. Natürlich muss es "Bildschirmmitte" sein statt "Fenstermitte".

Piet


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

Christian_W
Ehrenmitglied V.I.P. h.c.
Konstrukteur (Dipl-Ing)


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

Beiträge: 3189
Registriert: 04.04.2001

CSWP 12/2015<P>SWX2021sp5 Win10/11
(SWX2016, SWX2012)
proAlpha6.2e00/calinkV9
(Tactonworks)
(Medusa7, NesCAD2010,
solidEdge19)

erstellt am: 25. Okt. 2013 16:27    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 Bernd Knab 10 Unities + Antwort hilfreich

Zitat:

FormName.Show (False)

Super,
hab erstmal übersehen, da (False) dranzuhängen, aber dann geht es .. 

Dankeschön!!!

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)2024 CAD.de | Impressum | Datenschutz