| |
| Digital Twin: mehr Wissen für effizientere Nutzung |
Autor(16237)
|
Thema: Aucotec.Ini-Sektion [WIN_WinSizePos] (2808 mal gelesen)
|
TIF Mitglied E.Ing(FH)/Systembetreuer ECAD
Beiträge: 441 Registriert: 24.08.2004 ELCAD770SP1 Kommandosprache EPLAN P8 2.5.4 HF2 8440 - Beginner VBA Access2010
|
erstellt am: 15. Mai. 2012 12:04 <-- editieren / zitieren --> Unities abgeben:
Hallo, immer wieder kommt es vor, dass bei kopierten Aucotec.ini-Dateien, bei Änderungen von Anzeige-Auflösungseinstellungen bzw. 2 Bildschirmlösungen (Erweiterter Desktop) Pop-Up - Fenster nicht mehr "erscheinen", weil ihre gespeicherte Position im "Nirwana" liegt. Ich habe diese Problem schon einmal hier angesprochen: http://ww3.cad.de/foren/ubb/Forum38/HTML/002278.shtml#000020 ohne dass eine wirklich zufriedenstellende Lösung genannt wurde. Als taugliche Lösung würde ich mir vorstellen, dass ich, wenn immer ein Pop-Up-Fenster nicht sichtbar ist, eine Tastenkombination drücken kann, die mir das "abtrünnige" Window in das Zentrum meines GE-Fensters holt? Übrigens: Ist es möglich, durch komplettes Entfernen der Sektion [WIN_WinSizePos] aus der Aucotec.ini genau dieses Zentrieren der Pop-Ups zu erzwingen? Wenn nicht, welchen Inhalt muss diese Sektion haben, damit en etwa dieser Effekt erreicht wird? Es grüßt euch ein fragender Würzburger! ------------------ TIF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 15. Mai. 2012 18:04 <-- editieren / zitieren -->
Hallo Thomas, ja, ich habe im Gedächtnis, dass Pelle hier mal geschrieben hatte, dass man die Sektion auch löschen kann. Elcad erstellt sie dann beim Öffnen neu. Leider taugt die Suche hier nicht viel, deshalb habe ich den Thread nicht gefunden. ------------------ Viele Grüße Uli |
Rolf K. Moderator CAD-Konstrukteur
Beiträge: 1730 Registriert: 10.12.2002 ELCAD 2020 SP2 e3.2018 Windows 10 zuhause: Paintshop Pro 2020 Cray XT4 Privileg SR 12 PR Chivers Lemon Jelly
|
erstellt am: 15. Mai. 2012 20:12 <-- editieren / zitieren --> Unities abgeben: Nur für TIF
|
TIF Mitglied E.Ing(FH)/Systembetreuer ECAD
Beiträge: 441 Registriert: 24.08.2004 ELCAD770SP1 Kommandosprache EPLAN P8 2.5.4 HF2 8440 - Beginner VBA Access2010
|
erstellt am: 16. Mai. 2012 07:22 <-- editieren / zitieren --> Unities abgeben:
Hallo Interessierte und Helfer, der "Unglaubliche" hat mich ca. 10min nach meinem Beitrag angerufen und das was Du, Uli, mitteilst bestätigt: "Das Weglöschen der gesamten Sektion bewirkt, dass wieder alle Pop-Up-Fenster in die Mitte des ELCAD-Anwendungsfensters rutschen". Jetzt will ich aber eine Lösung, die dem Anwender unmittelbar hilft, also ohne das ELCAD zu schliessen und die Aucotec.ini in irgendeiner Form editieren zu müssen. Dazu hat er mir einen "Vierzeiler" in der Kommandosprache vorgeschlagen. Das Script könnte, nach einem Maskenabbruch mit ESC, z.B. in die Toolbar gelegt werden oder über EXTRAS - KOMMANDOZEILE oder eine zugeordnete Tastenkombination aufgerufen werden. Ich werde das heute mal ausprobieren. Aus dem sibirisch kalten Unterfranken grüßt
------------------ TIF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PRO-ELIT Mitglied selbstständiger Dienstleister
Beiträge: 457 Registriert: 13.03.2008 Windows 7 Ultimate (32bit) Intel(R) Core(TM) i7-2600K 8GB RAM , 120GB SSD, SATA III NVidia GTX460-2GB Dual Head -- ELCAD, alle Versionen
|
erstellt am: 16. Mai. 2012 07:30 <-- editieren / zitieren --> Unities abgeben: Nur für TIF
Moin, Die Inhalte der Sektion [WIN_WinSizePos] können beim Umzug auf einen anderen Rechner getrost gelöscht werden, diese wird beim Programmstart von ELCAD neu angelegt und die Einträge beim Verlassen gespeichert, je nach Aktion werden weitere neue Zeilen angelegt in denen die letzte Position und ggf. auch Größe der entsprechenden Aktion (bzw. der Fensters der Aktion) gespeichert wird. Ich habe damit öfters zu tun. Direkt nach einem Umkopieren einer Aucotec.ini auf ein neues System lösche ich den Inhalt dieser Sektion vom den ELCAD-Start, da das Erneute Positionieren der Fenster schneller geht als das einzelne Suchen und Editieren der Einträge. (Den einzigen Schalter, den ich früher meistens stehen lies oder ggf. anpasste war der MaskeWinCharWidth=7, das war nötig, wenn innerhalb eines Dialogfelds der Abstand zwischen Zeilentext/info und Editierfeld zu klein war (wenn ich mich recht erinnere ,Pelle wird mich sonst berichtigen).) Nachtrag, vorherige Antwort kam während ich diesen Beitag schrieb. Falls es ein Script geben wird, so hätte ich auch Interesse daran. ------------------ Gruß aus Herford Kai Mensching [Diese Nachricht wurde von PRO-ELIT am 16. Mai. 2012 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pelle Bootsmann Ehrenmitglied V.I.P. h.c.
Beiträge: 2156 Registriert: 24.03.2004
|
erstellt am: 16. Mai. 2012 09:44 <-- editieren / zitieren --> Unities abgeben: Nur für TIF
Hallo Kai, der Schalter "MaskeWinCharWidth=..." ist eigentlich schon länger nicht mehr nötig. Beim Fehlen des Schalter wird dann die erforderlich Breite berechnet zu 45% aus der Breite der Großbuchstaben, zu 45% aus der Breite der Kleinbuchstaben und zu 10% aus dem breitesten Zeichen (meist @). Das Ergebnis ist dann zufällig auch 7. ------------------ Viele Grüsse von Saltkråkan Pelle Bootsmann Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
PRO-ELIT Mitglied selbstständiger Dienstleister
Beiträge: 457 Registriert: 13.03.2008 Windows 7 Ultimate (32bit) Intel(R) Core(TM) i7-2600K 8GB RAM , 120GB SSD, SATA III NVidia GTX460-2GB Dual Head -- ELCAD, alle Versionen
|
erstellt am: 16. Mai. 2012 09:56 <-- editieren / zitieren --> Unities abgeben: Nur für TIF
Hallo Pelle, daher schrieb ich auch früher, seit einigen Versionen brauchte ich den Schalter auch nicht mehr ändern. Und wie das so ist, wenn man etwas länger nicht braucht, vergisst man die genauen Zusammenhänge (zunehmendes Alter? ). Danke dir für die genaue Erklärung. ------------------ Gruß aus Herford Kai Mensching Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TIF Mitglied E.Ing(FH)/Systembetreuer ECAD
Beiträge: 441 Registriert: 24.08.2004 ELCAD770SP1 Kommandosprache EPLAN P8 2.5.4 HF2 8440 - Beginner VBA Access2010
|
erstellt am: 16. Mai. 2012 14:31 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, das Script "delWinPos" ist inzwischen fertig und demnächst wohl über Uli's Tauschbörse beziehbar. Natürlich, da von einem Amateurprogrammierer, ohne Gewehr!
------------------ TIF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Pelle Bootsmann Ehrenmitglied V.I.P. h.c.
Beiträge: 2156 Registriert: 24.03.2004
|
erstellt am: 16. Mai. 2012 15:11 <-- editieren / zitieren --> Unities abgeben: Nur für TIF
|
TIF Mitglied E.Ing(FH)/Systembetreuer ECAD
Beiträge: 441 Registriert: 24.08.2004 ELCAD770SP1 Kommandosprache EPLAN P8 2.5.4 HF2 8440 - Beginner VBA Access2010
|
erstellt am: 16. Mai. 2012 15:15 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied
|
erstellt am: 16. Mai. 2012 17:47 <-- editieren / zitieren -->
Hallo Thomas, Danke für Dein Script. in Zeile 24 schließt Du die ini, in Zeile 25 öffnest Du sie wieder. Anfänger-Frage: Ist das so gewollt? Wenn ja, warum? Danke schon mal für Deine Erklärung. ------------------ Viele Grüße Uli |
TIF Mitglied E.Ing(FH)/Systembetreuer ECAD
Beiträge: 441 Registriert: 24.08.2004 ELCAD770SP1 Kommandosprache EPLAN P8 2.5.4 HF2 8440 - Beginner VBA Access2010
|
erstellt am: 16. Mai. 2012 19:57 <-- editieren / zitieren --> Unities abgeben:
Zitat: Original erstellt von UKanz: Hallo Thomas,Danke für Dein Script. in Zeile 24 schließt Du die ini, in Zeile 25 öffnest Du sie wieder. Anfänger-Frage: Ist das so gewollt? Wenn ja, warum? Danke schon mal für Deine Erklärung.
Hallo Uli, das Schliessen mit ([1]) als Parameter erzwingt das physikalische Schreiben der aktuellen Einstellungen in die mit der Nr. referenzierten INI-Datei. ELCAD verfährt mit dem Öffnen der Aucotec.ini-Datei für mich etwas undurchsichtig denn es erfolgt oft automatisch, ohne dass ich das mit einem expliziten Kommando auslösen muss. Damit ich aber beim Durchlesen meines Codes weiß, wann die INI offen ist, öffne ich sie gezielt. Und zum Weiterarbeiten in der Zeichnung, der GE läuft ja, muss sie offen sein. Eigentlich müssten dann noch der Ini-Stack neu aufgebaut und die Einstellungen neu eingelesen werden usw.... Aber das war mir dann zu kompliziert und funktionieren tut es auch so. Warum und wieso, das blicke ich auch nicht immer... Wenn die internen Variablen nicht neu eingelesen werden, werden offenbar die bereits vorhandenen, beim Programmstart eingelesenen verwendet bis auf diejenigen, die explizit gelöscht bzw. geändert wurden. Lange Rede kurzer Sinn: Das Öffnen wäre nicht notwendig und eigentlich müsste es auch ohne phsikalischen Schreibvorgang funktionieren. Den hat mir der "Unglaubliche" empfohlen. Ausserdem läßt sich damit die Veränderung an der INI-Datei mit einem ASCII-Editor gut überwachen. ------------------ TIF Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 16. Mai. 2012 20:45 <-- editieren / zitieren -->
Hallo Thomas, das mit dem iniStack ist so eine Sache. Was wenn die Sektion auch in der aucsys.ini vorhanden sein kann? Dann scheitert Deine (iniNr,([1])) ohne iniStack. Ich würde das so: AucSetIniStack(); Reihenfolge: aucsys - project - aucotec AucOpenAllInis (iniAucotecNo, iniAucSysNo, iniProjectNo, aucSysHatVorrang); ------------------ Viele Grüße Uli |