Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Shape Protection in gruppierten shapes
zurück: Frage zu "Öffnen von Zeichenblättern über Links" weiter: Mehrere Fragen zum Bearbeiten von Shape Daten Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
sam92
Buguser (Windows-Anwender)


Verfasst am:
20. Jul 2010, 16:13
Rufname:

Shape Protection in gruppierten shapes - Shape Protection in gruppierten shapes

Nach oben
       

Hi,

ich hab mal wieder ein seltsames Problem bei dem mir Google schon wieder nicht hilft... Grrr.

Also, stellt euch vor ich habe ein Shape aus 2 Teilen, beide sind gruppiert und das Gruppenshape enthält einige Shapedaten. Jetzt ist das so konfiguriert, dass ich jedes der beiden Teilshapes doppelklicken kann und dadurch die Form/Eigenschaften verändern kann. Diese Daten werden dann im Gruppenshape gespeichert.

Ich hab es also so konfiguriert, dass das Gruppenshape hinter den Mitgliedsshapes angezeigt wird (DisplayMode = 1) und die Auswahl zuerst die Mitglieder trifft (SelectMode=2)
Die Mitglieder sind generell gegen fast alles geschützt, damit niemand meine Gruppe zerlegen kann. So auch gegen löschen.

Wenn ich jetzt aber das Gruppenshape löschen WILL, muss ich erstmal das selbige auswählen. Das ist ziemlich mühsam.
Habt ihr eine Idee, wie ich den Löschbefehl, der an ein Mitglied geht an das Gruppenshape umleiten kann?

LG, sam

_________________
User->Brain = null
Yacine
Im Profil kannst Du frei den Rang ändern


Verfasst am:
20. Jul 2010, 20:48
Rufname:


AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Sam, um Himmmelswillen, tu das ja nicht.

Meine Konstrukteure haben genau aus diesem Grund all unsere Shapes auch gegen alles geschützt. Was glaubst Du was für negatives Karma tag für tag auf sie abgeladen wird?

Das Zeichnen macht kein Spaß. Alles was man anpassen muß, muß erst mühsam wieder "entschützt" werden. Es ging so weit, dass ich ein Macro screiben musste "unprotect_all".

Du kannst nicht alle Eventualitäten berücksichtigen aber Du kannst das Leben deiner Nutzer zur Hölle machen.

Bitte laß es sein.

... und deshalb, für dein Seelenfrienden, bekommst Du auch nicht die Lösung auf deine Frage Very Happy
sam92
Buguser (Windows-Anwender)


Verfasst am:
21. Jul 2010, 07:54
Rufname:

AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Hi Yacine,

Im Prinzip hast du ja recht. Ich hab schonmal was entwickelt und durfte hinterher alles zugänglich machen... Aus ganz ähnlichen Gründen.
Das Problem sind dann aber nicht die User, die sich ein bisschen auskennen, sondern die "Hausfrauen":
Klicki-Bunti - oh, wieso ist denn jetzt das Shape so komisch - Mal den Entwickler anrufen - Nach dem Motto: user.parent = developer ;)

Aber mal so generell. Gibt es einen anderen Weg als über Macro & VBA? Vor allem, wo müsste ich denn dann den Code einbauen? So wie ich das verstehe müsste die .vss den Code bereitstellen. Anders kann ich ja nicht gewährleisten, dass ich in jedem Fall das Macro zur Verfügung habe, oder?

lg, sam

[edit] ohne jetzt irgendwie was negatives über Hausfrauen sagen zu wollen! Es geht nur darum, dass es "Fachfremde" sind[/edit]

_________________
User->Brain = null
Yacine
Im Profil kannst Du frei den Rang ändern


Verfasst am:
21. Jul 2010, 22:07
Rufname:

AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Hallo Sam,
Du hast es so schön geschrieben ...

1) zu den Hausfrauen: finden ich sehr nett das waren bei uns bisher nur D.A.U.s
Dümmster anzunehmender User
Die Hausfrau muß ich mir merken, sehr gut.
Allgemein ist das Problem mit ihnen einfach zu lösen. Hattu Putt macht? zieh neu rein!

2) zur eigentlichen Frage. VBA ist hier eher nicht angebracht. Was soll ich meine Lösung extra mit einem Lösch-Feature überladen? Das kann abstüren, erfordert die Freigabe von der Hausfrau ... usw.
Das musst du auf Shape-Ebene Lösen.
a) erster Ansatz: zurück zu "Gruppe zuerst auswählen". Habe auch 1, 2 Mal mit Mitglieder zuerst gespielt, bin dann aber sehr schnell zu Standard zurück. konnte
mich an das 2 Mal Klicken nicht gewöhnen.

b) du könntes das Löschen der Gruppe in jedes Sub-Shape als Action implementieren ... eher unelegant
Schau doch mal hier nach ob die geeignete Funktion dabei ist.
DoCmd/DOCMD Commands [Visio 2003 SDK Documentation]

Hoffe das reicht als Starthilfe.
Gruss Yacine

PS: deine Entschuldigung bzgl. der Hausfrauen ... schwach. Steh zu Deinen Witzen Very Happy oder wird man sonst hier rausgeschmissen?
sam92
Buguser (Windows-Anwender)


Verfasst am:
23. Jul 2010, 08:23
Rufname:


AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Hi Yacine,

DAUs kannte ich eigentlich schon. Weiss auch nicht, wo die Hausfrauen bei uns herkommen..... *grübel* Aber die Wikipediaseite ist trotzdem geil:
Error in OSI-Level 8 <- Das ist der Knüller. Vor allem, wenn man öfter mit dem OSI Schichtenmodell zu tun hat ;) Da kannte ich nur "Captain CAPSLOCK und seine Crew segeln durch die 7 Schichten des OSI Modells"

Zurück zum Thema, die DOCMDs hab ich durchgeschaut, meiner Meinung nach ist da nichts dabei. Es gibt zwar ein zweimal "delete" aber das bezieht sich dann immer auf text oder comment. RemoveFromGroup oder ähnliches ist bestimmt auch nicht was ich suche. Das sollte eher "DeleteObject" oder "DeleteShape" oder so heißen.
Ich hatte auch schonmal bei der Visio Shapesheet Referenz die Funktionen durchgeschaut und da ist meiner Meinung nach auch nichts dabei....

Damit bin ich Ansatzlos.

Zum Gruppeauswählen kann ich nur sagen, dass ich mir nicht vorstellen kann, wie das bei mir funktionieren soll. Stell dir vor, du hast einen "Baustein" und ein Paar Eingänge in diesen. Normalerweise kommen ja Verbinder an diese Connection Points. Bei diesem Baustein kann man aber auch auf die Verbindung verzichten und eine Konstante (z.B. 0 oder 1) anlegen. Also als Modell: Entweder kommt ein Wert über den Verbinder in den Eingang oder wurde am Eingang als Konstante definiert.
Ich hab 8-16 Eingänge an jedem Baustein.
Ich hab das bisher so, dass ich jeden Eingang anwählen kann und über Actions/ShapeDaten bestimme, ob Verbinder möglich oder die Konstante angelegt wird. Wie das gehen soll, ohne dass ich meinen Eingang anwähle ist mir nur vage klar und ich weiß noch nicht, ob ich diesem Gedanken überhaupt folgen soll....

^^ Lg, sam

PS: Entschuldigen ist immer gut, wer weiß wer hier so alles mitliest...... Nicht dass sich noch jemand Diskrimirationiert fühlt. Das will doch keiner.

_________________
User->Brain = null
Yacine
Im Profil kannst Du frei den Rang ändern


Verfasst am:
24. Jul 2010, 09:05
Rufname:

AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Yacine am 23. Jul 2010 um 21:24 hat folgendes geschrieben:
Hallo Sam,
habe mal Deine Posts durchgelesen und kann besser nachvollziehen was Du Dir aufgebaut hast.

Der Ansatz die Intelligenz in jedes einzelne Port zu packen ist SEEEEHR elegant, aber ich würde es selbst nur so realisieren, wenn die Skalierbarkeit sehr wichtig. dh wenn Du (noch) nicht weist wie viele Ports in Zukunft benötigt werden und diese Anzahl möglicherweise sehr gross sein kann.

Typischerweise würde ich eher alles in die Gruppe packen. Da habe ich nur ein Shape sheet und verwalte dort das ganze.

Ich vermittle meinen Hausfrauen das Konzept des "double single clicks": Ten IT Concepts That Non-IT People Don't Get
Dann können sie auf die Gruppenmitglieder zugreifen.

Aber nun kurz zurück zum löschen, eskönnte so gehen:
1) Events: bin selber sehr schwach darin, aber vielleicht möchte Jumpy etwas dazu schreiben - ich weis das er darin fit ist. Setz den Lösch-Schutz auf erlaubt zurück und fange den Lösch-Event ab, dann ermittelst Du das Elter-Shape (die Gruppe) und machst Ihr den garaus.

2) Schreibe ein Action-Eintrag fürs Löschen in jedes einzelne "Viereck", ermittle dann das Elter shape, ... usw.

Hallo Sam,
manche Sachen sollte man doch erstmal überschlafen ...

Wenn ich es richtig verstanden habe, stört es Dich dass Du die Gruppe nicht einfacher ausgewählt werden kann, wenn als Auswahl-Methode "Mitglieder zuerst" eingestellt ist.

Das beigefügt Shape ist eine Gruppe, die selbst eine Geometrie-Sektion hat.
Das erlaubt - mit den geforderten Einstellungen - mit einem einzigen Klick entweder das Kind- oder das Elter-Shape auszuwählen. Ich denke dass das in Sachen "Intuitivität" (oder Hausfrauentauglichkeit) eine recht gute Lösung sein kann.



Sam.zip
 Beschreibung:

Download
 Dateiname:  Sam.zip
 Dateigröße:  30.8 KB
 Heruntergeladen:  17 mal

sam92
Buguser (Windows-Anwender)


Verfasst am:
26. Jul 2010, 10:28
Rufname:

AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Morgen Yacine ,

Es ist eigentlich genau wie du sagst: Ich habe keine Idee, wie viele Ports es geben wird. Und daher versuche ich möglichst viel Arbeit zu recyclen. Noch dazu wird es mehrere Grundformen geben, die auch alle 0-x Ports mit der gleichen Funktionalität haben sollen.

hab mir eben mal dein Beispiel angeschaut... Ich hab zwar wieder was gelernt aber so richtig weiter bin ich dummerweise noch nicht. Das mit der Geometry hab ich kapiert. Das OpenGroupWin() kannte ich noch gar nicht. Ich weiß auch nicht, ob ich das einsetzen will... Ich mag nämlich die Popup-Mentalität nicht. Aber immerhin, es wäre glaube ich so zumindest lösbar und ich bin ja nicht das Maß der Dinge sondern meine Benutzer.... *hust* ;)

Zumindest wird durch die Geometry die Auswahl doch erheblich vereinfacht. Das ist schonmal gut. Und mit etwas Training habe ich auch Hoffnung. Razz

Ich will trotzdem nochmal auf die Events zu sprechen kommen: Du sagst ich soll das Löschevent abfangen. Das wäre mir prinzipiell schon klar wie so etwas geht. Das Problem ist, dass ich das Event an sich nicht finde. Es scheint kein OnDelete für Shape oder Object zu geben oder bin ich blind?

Auch die Action sind mir unklar, weil ich weder im DOCMD noch in den Function-References (Hilfe) ein Shape-Delete oder Object-Delete oder zumindest etwas ähnliches finde.

Versteh mich nicht falsch. Ich kenne mich schon ein bisschen mit beidem aus. Was mir fehlt ist vor allem der Name des Dinges das ich aufrufe (in der Action) und der Name des Events. Und beide finde ich nicht. Wahrscheinlich lese ich die ganze Zeit drüber und denke "ne, das isses net"

Kann ich eigentlich bei OPENGROUPWIN() die Titelzeile des Windows-Fensters ändern? Lass mich raten: Nur über die Win-API.

lg, Sam

_________________
User->Brain = null
Jump(y)
Gast


Verfasst am:
26. Jul 2010, 12:06
Rufname:

AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Hallo,
war ein bissle Urlaub machen und kann erst jetzt was dazu sagen.
Das Lösch Event gibt es beim Shape nicht. Es ist ein Event der Seite. Da schaust du dann im Code, was für ein Shape gelöscht wird (du musst das also identifizierbar machen) und dann entsprechend handeln, sprich die ganze Gruppe löschen.
Im Codefenster im ThisDocument Modul sieht das dann so aus:
Code:
Option Explicit
Private WithEvents ThePage As Visio.Page
'Hier wird eine Variable für die Seite deklariert,
'WithEvents sorgt für die Event-Überwachung der Seite

Private Sub ThePage_BeforeShapeDelete(ByVal Shape As IVShape)
    'Hier käme dann dein Code hin
End Sub


Public Sub Restart()
    Set ThePage = Visio.ActivePage
End Sub
'Die Variable ThePage muss natürlich auch gefüllt werden,
'dass passiert hier manuell

Private Sub Document_DocumentOpened(ByVal doc As Visio.Document)
    Set ThePage = Visio.ActivePage
End Sub
'Hiermit wird die Variable beim Öffnen einer Zeichnung automatisch gesetzt.

Private Sub Document_DocumentCreated(ByVal doc As IVDocument)
    Set ThePage = Visio.ActivePage
End Sub
'Hiermit wird die Variable beim neuen Öffnen einer Zeichnung aus einer
'Vorlage automatisch gesetzt.
Hoffe die Info ist so hilfreich,
Jumpy
sam92
Buguser (Windows-Anwender)


Verfasst am:
28. Jul 2010, 16:12
Rufname:


AW: Shape Protection in gruppierten shapes - AW: Shape Protection in gruppierten shapes

Nach oben
       

Danke Jumpy,
habs kapiert und hinbekommen!

Lg, Sam

_________________
User->Brain = null
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge MS Visio Forum: 2D Shapes Kleben und auslesen 4 Lisa83 1900 25. Aug 2008, 14:16
Lisa83 2D Shapes Kleben und auslesen
Keine neuen Beiträge MS Visio Forum: Shapes mit veränderbaren Text erstellen 3 RolandE 2212 04. Aug 2008, 22:19
GuidoK Shapes mit veränderbaren Text erstellen
Keine neuen Beiträge MS Visio Forum: Shapes beschriften und Text in ExcelTabelle schreiben 7 Lisa83 2910 28. Jul 2008, 11:41
MSVISIO 2002 Shapes beschriften und Text in ExcelTabelle schreiben
Keine neuen Beiträge MS Visio Forum: Shapes automatisch einblenden/ausblenden 0 J.W. 4225 23. Jul 2008, 21:24
J.W. Shapes automatisch einblenden/ausblenden
Keine neuen Beiträge MS Visio Forum: Benutzerdefinierte Eigenschaften von Shapes übernehmen 2 Ireen 3817 07. Jul 2008, 13:03
MBreugst Benutzerdefinierte Eigenschaften von Shapes übernehmen
Keine neuen Beiträge MS Visio Forum: Shapes zum Darstellen von SQL-Datenbanken 2 Dennis R 3015 03. Jul 2008, 12:47
Dennis R Shapes zum Darstellen von SQL-Datenbanken
Keine neuen Beiträge MS Visio Forum: Gruppierte Shapes am Raster ausrichten 0 Ignoramus 4127 16. Mai 2008, 10:51
Ignoramus Gruppierte Shapes am Raster ausrichten
Keine neuen Beiträge MS Visio Forum: Custom Property Eintrag soll Shape createn 1 Visio 2002 User 1287 13. Mai 2008, 14:16
MBreugst Custom Property Eintrag soll Shape createn
Keine neuen Beiträge MS Visio Forum: Benutzerdaten aus Shapes übernehmen 0 Seetroll77 686 09. Dez 2007, 11:13
Seetroll77 Benutzerdaten aus Shapes übernehmen
Keine neuen Beiträge MS Visio Forum: Gleichungen in einem Shape 0 smallgermanboy 582 12. Sep 2007, 15:08
smallgermanboy Gleichungen in einem Shape
Keine neuen Beiträge MS Visio Forum: Visio Shape: Firewall 3 Maik 16374 03. Aug 2007, 22:29
c031917 Visio Shape: Firewall
Keine neuen Beiträge MS Visio Forum: Ärger mit Fenstern (Raumplan Shapes) in einem Raumplan 2 BenSam66 2326 27. Mai 2007, 14:31
Gast Ärger mit Fenstern (Raumplan Shapes) in einem Raumplan
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Expression Web