- 01: 名前:くりじゃ投稿日:2005/09/26(月) 17:11
- 背景ページを表示したくありません。
レイヤー − ロック で触れなくはできますが背景ページにデータを書き込む人がいるのでそのための対策です。
表示させなくする方法があれば教えて下さい。
- 02: 名前:yoda投稿日:2005/09/26(月) 17:33
- くりじゃさんは、オプションの設定かなにかで、どの図面でも、
一切、背景を表示しないようにしたいと、思っているんじゃ
ないかな?とすると、それはできないような気がします。
Excelのような、ページの非表示の機能はないから。
しかし、ある特定の図面についてなら、ページ設定でできます。
メニューは、「ページ設定」⇒「ページのプロパティ」⇒「背景」⇒「なし」。
でも、これも、設定を変えられたら、また元に戻ってしまいます。
- 03: 名前:くりじゃ投稿日:2005/09/26(月) 17:53
- そうなんです。Excelのように非表示があるのかと思ったのです。
どうしてそう考えるかというと以前他の方が作ったフォームとして利用している背景があるのですが
それは、ドローイングエクスプローラでは背景ページとして表示されるのに
シートはドローイングエクスプローラをクリックしないと表示されなくて
あたかも背景の型紙のように設定されているのです。
シートを挿入するときも ページ設定 − ページプロパティ − 種類 の背景ボタンは
グレイになって前景しか選択できなくなっています。
現在その方は退職されているので教えていただくことも出来ず
どうすればそのような背景をつくることができるのか?またどうすればそういう設定ができるのか?
と思った次第です。
ちょっと説明が通じないかも知れませんが、背景ページとしては存在しているが表示されず、背景として選択出来るようにしたい訳です。
何か設定方法とかあればよろしくお願いします。
- 04: 名前:yoda投稿日:2005/09/26(月) 20:03
- 想像もつきませんが、何かよい方法があるのでしょうね。
- 05: 名前:yoda投稿日:2005/09/26(月) 20:14
- わかりました。「背景ページ」の「シェイプシート」を表示し、
「PageProperty」セクションの「UIVisibility」セルの値を、1
にすれば、非表示、0にすれば表示されます。
こんな機能が、あるんですね。全く知りませんでした。
- 06: 名前:くりじゃ投稿日:2005/10/05(水) 15:06
- yodaさんお返事が遅くなって済みませんでした。
レイヤープロパティの表示のチェックを外すのと同じですよね。
それだと背景の時はいいのですが、前景の時のだと
背景を選択しても何も表示されません。
きっとシート自体を隠すっていう機能はないのでしょうね。
色々お騒がせしました。ありがとうございました。
- 07: 名前:名無しさん投稿日:2005/10/06(木) 09:33
- 図面の保護で、[背景]に保護をかければ 03 のような状態にできますよ。
- 08: 名前:yoda投稿日:2005/10/10(月) 07:38
- >>07
なるほど、すばらしい。こんな機能があるのですね。
>>06
05や07では、背景を隠すのではなく、背景タグを隠す
だけのようで、ユーザーが背景ページを、変更することが
できないようにすることが、できるのですが。
もしもユーザーがこの設定の仕方を知っていれば、
だめですが。
- 09: 名前:yoda投稿日:2005/10/11(火) 10:37
- どちらのやり方でも、ページタグがすぐに消えたり、再表示されたり
しません。一度、他のページへ移動するまで、変化しません。その
ため、自分が正しく操作したのかどうか、よくわからないことがあり
ます。実は、MSDNの英文の掲示板で、そのことが話題になってい
て、何かよい方法はないかと、探したのですがありませんでした。
結局、一度、他のページへ行き、また戻るという操作を、マクロで
実行する案を出しました。何の役にも立たないのですが、マクロは、
以下のようになります。下の、マクロのうち、「RefreshPages」とい
うのが、それです。
Sub HideBackPage()
Dim BackPage As Visio.Page
For Each BackPage In ThisDocument.Pages
If BackPage.Background Then
BackPage.PageSheet.Cells("UIVisibility").FormulaU = "1"
End If
Next
RefreshPages
End Sub
Sub ShowBackPage()
Dim BackPage As Visio.Page
For Each BackPage In ThisDocument.Pages
If BackPage.Background Then
BackPage.PageSheet.Cells("UIVisibility").FormulaU = "0"
End If
Next
RefreshPages
End Sub
Sub ProtectBackGround()
ThisDocument.Protection = visProtectBackgrounds
RefreshPages
End Sub
Sub UnProtectBackGround()
ThisDocument.Protection = visProtectNone
RefreshPages
End Sub
Sub RefreshPages()
Dim ThisPage As Visio.Page
Dim AnotherPage As Visio.Page
Dim myPage As Visio.Page
Set ThisPage = ActivePage
For Each myPage In ThisDocument.Pages
If Not myPage Is ActivePage Then
Set AnotherPage = myPage
Exit For
End If
Next
If Not AnotherPage Is Nothing Then
ActiveWindow.Page = AnotherPage
ActiveWindow.Page = ThisPage
End If
End Sub
■トップに戻る リロード 単独スレ表示
|