Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Forschrittsanzeige!!!

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
Autor Thema:  Forschrittsanzeige!!! (3025 mal gelesen)
Timberwolve
Mitglied



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

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 08. Aug. 2006 15:40    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 arbeite im Moment an einem Projekt an dem der Anwender mehrere Optionen zum Ausführen hat. Da diese Optionen mit Kopiervorgängen von der Laufzeit ziemlich lange dauern möchte ich eine Forschrittsanzeige implementieren, die das Warten etwas luxuriöser macht.

Das Problem:

Je nach Option dauert das Programm mal länger oder mal kürzer.
Die Fortschrittsanzeige kann also nicht fix von den Werten her sein, sondern sie müsste interaktiv zur jeweiligen Laufzeit des Programms lauffen. geht das?????

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

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

V5-Maxe
Mitglied
CAD-Konstrukteur, CATIA V5


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

Beiträge: 37
Registriert: 16.06.2005

Windows7 Prof x64
CATIA V5R19
Dell Precision T5500
12GB
NVIDIA Quadro FX 580 512MB

erstellt am: 08. Aug. 2006 16:03    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 Timberwolve 10 Unities + Antwort hilfreich

Hallo Timberwolve,
da eine Fortschrittsanzeige darauf basiert, das mann vorher weiß wie lange etwas dauert, ist das bei CATIA etwas schwierig.
Ich mache das dann immer so:
in der Statusbar kannst du etwas ausgeben, ohne eine Box zu aktivieren
zum Beipiel:
CATIA.StatusBar = "Macro is working"
wenn du irgendwelche Schleifen durchlaeufst auch so:

CATIA.StatusBar = "Macro is working, Loop " & i & " of " & selection1.count

so weisst du jedenfalls wieviel schon fertig ist, jedoch nicht wie lange es noch dauert...

Gruß V5-Maxe

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

Timberwolve
Mitglied



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

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 08. Aug. 2006 16: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

naja nur liest der Anwender eben die Statuszeile nicht, deswegen würd ich gern nen Progressbar auf ner separaten Oberfläche haben.
Das sieht halt einfach besser aus und man sieht das sich was tut

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

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

Holger_BW
Mitglied
CAx Support


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

Beiträge: 80
Registriert: 23.01.2004

CATIA V5R21SP6
Enovia V4 VPM
Enovia V6R2015c
Creo 2.0

erstellt am: 08. Aug. 2006 16: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 Timberwolve 10 Unities + Antwort hilfreich

Hi Timberwolve,

ich habe eine Fortschrittsanzeige wie von V5-Maxe beschrieben mal in VBA  programmiert (erscheint in einem Extra-Fenster). Bei Interesse kann ich Dir den Code zukommen lassen. Für VBS wüßte ich allerdings keine Lösung.

Gruß, Holger

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

okl
Mitglied
Wirtsch-Ing (Maschbau)


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

Beiträge: 157
Registriert: 21.04.2006

2x3,6 GHz, 2 GB RAM, NVIDIA Quadro FX 1800, Delmia V5R16 SP1, Win XP Prof SP2, Office, VS 2005, VB 6, Inventor (Test), VBExpress .NET 2005
Adminrechte

erstellt am: 08. Aug. 2006 16:50    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 Timberwolve 10 Unities + Antwort hilfreich

Moin.

Unter VBS geht das nicht. Entweder du nutzt als Oberfläche eine Art Bild, welches Du auf einer Form einbindest oder Du programmierst in VB/VBA oder Du hast keine Fortschrittsanzeige. In VB kannst Du übrigens auch eine Form erstellen, kompilieren und von Deinem Makro aus über Parameter die als fertiges Steuerelement vorliegende Standardprgressbar nutzen. Wird nur wieder extrem zeitraubend sein. Ich würde behaupten: schnapp Dir einen lustigen Kreis und lass solange Farben darauf erscheinen, bis Deine Funktion fertig ist.
okl

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

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



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

Beiträge: 4107
Registriert: 12.03.2001

erstellt am: 08. Aug. 2006 17:09    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 Timberwolve 10 Unities + Antwort hilfreich

Man kann es auch in vbs hinbringen. Hatte mal vor langer Zeit eine Lösung über HTML (HTML Seite generieren und Balken darin darstellen), ist aber sehr viel Aufwand.

Muss mal suchen ob ich die noch finde. Persönlich würde ich jetzt alles mit vb.net machen (hab sogar angefangen meine vbs Scripts rüberzuziehen), die Express Version ist kostenfrei und dann sind solche Probleme kein Thema.

Axel

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

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



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

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 08. Aug. 2006 22:17    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 Timberwolve 10 Unities + Antwort hilfreich

Hab meinen alten Code noch gefunden, er ist aber schon über 3 jährig

Code:
Const min = 0
Const max = 100

Set oIE = WScript.CreateObject("InternetExplorer.Application")

MakeBar

for I = 1 to 100
Progress i, min, max
next


Sub MakeBar ()
' Internet Explorer mit Fortschrittsanzeige starten
Dim html
' HTML-Code definieren
html = "<html><head><title>Fortschritt</title></head>" & _
      "<body bgcolor='silver'>" & _
      "<B><div id='T0'> % Fertig </div></B>" & _
      "<hr size='20' align='left' width='0' " & _
      "color='#0000FF' id='T1' thick='20'>" & _
      "<B><div id='T2'> 0</div></B></body></html>"

' *** Internet Explorer aufrufen ***
Set oIE = WScript.CreateObject("InternetExplorer.Application")
  oIE.left=50            ' Fensterposition
  oIE.top = 100          ' etc.
  oIE.height = 120
  oIE.width = 280
  oIE.menubar = 0       
  oIE.toolbar = 0
  oIE.statusbar = 0
  oIE.navigate "about:" & html ' Formular
  oIE.visible = 1        ' anzeigen

' Warte bis MSIE fertig ist
  Do While (oIE.Busy)     
  Loop
End Sub

'========================================================================================================================
Sub Progress(ByVal x, min, max)
' max. 200 Pixel-Bereich
With oIE.Document.all
  If x < min Then x = min
  If x > max Then x = max

' Wert ermitteln
  .T1.width = 200 * x / (max-min)
' Wert anzeigen
  .T2.InnerHTML= "--> " & x
End With
End Sub
' Ende


Hab ihn allerdings auf die Schnelle nicht mehr zum Laufen gebracht  (liegt vielleicht am IE6 oder am SP2), aber vielleicht dient er noch als Anregung  .

Axel

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

Timberwolve
Mitglied



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

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 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

Hallo Holger,

kannst du mir den Code mal bitte schicken???
Das wäre sehr nett, dann kann ich mal schauen wie das ganz funkt, bzw. ob es dann so aussieht wie ich gerne hätte *g*

Vielen Dank schonmal

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

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

Timberwolve
Mitglied



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

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 09:00    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, noch so neben bei, also ich progammier das ganze auf VB6 also sollte das mit zusätzlichen Formen kein Problem sein.
In vbs brauch ich es eh nicht

Gruss

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

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

Axel.Strasser
Ehrenmitglied V.I.P. h.c.
Selbstständig im Bereich PLM/CAx



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

Beiträge: 4107
Registriert: 12.03.2001

Früher war vieles gut, und das wäre es heute immer noch, wenn man die Finger davon gelassen hätte!

erstellt am: 09. Aug. 2006 09:31    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 Timberwolve 10 Unities + Antwort hilfreich

Hättest Du es halt gleich erwähnt, wäre vieles einfacher

Für vb6 schau mal hier: http://www.aboutvb.de/khw/artikel/khwlvwprogress.htm

Axel

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

Timberwolve
Mitglied



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

Beiträge: 233
Registriert: 21.07.2006

erstellt am: 09. Aug. 2006 10: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

Naja der Timer misst halt meine Laufzeit nicht ;-)

Egal wie gesagt ist ja nur Kosmetik, hab jetzt ein Progressbar eingabut und das sieht ganz ok aus. der Wert wird von den jeweiligen Schleifen beeinflusst und somit sieht es immer so aus als ob sich grad was tut.
Das genügt schon.
Zur Laufzeit wäre es halt perfekt gewesen.

Naja man kann nicht alles haben *g*

------------------
Wenn alle Stricke reissen, nehm ich ein Drahtseil

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

Holger_BW
Mitglied
CAx Support


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

Beiträge: 80
Registriert: 23.01.2004

CATIA V5R21SP6
Enovia V4 VPM
Enovia V6R2015c
Creo 2.0

erstellt am: 09. Aug. 2006 14: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 Timberwolve 10 Unities + Antwort hilfreich


VBA_fuer_progress_form.txt

 
Hallo Timberwolve,

auch wenn Du Dein Problem wohl inzwischen gelöst hast, stelle ich trotzdem zur Sicherheit noch meinen VBA-Code hier zur Verfügung. Ich habe ihn von allem unnötigen Ballast befreit, so daß er sicher nicht alleine läuft, aber mit etwas Programmiererfahrung dürfte die Adaption kein Problem sein.
Noch eine kurze Erklärung, was die Progressform zeigt, damit es leichter zu verstehen ist: eine Anzahl von Zeichnungen wird in PDF/DXF umgewandelt. Die Progressform stellt dar, die wievielte von X Zeichnungen gerade bearbeitet wurde.

Gruß, Holger

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