tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルMSCHARTの行ラベルについて
記事No13895
投稿日: 2009/07/29(Wed) 09:16
投稿者subuconsearch
はじめまして。
VB6の環境でMSchartについてご教授お願い致します。

MSchartの行ラベルについてですがプログラムで縦書きにすることは可能でしょうか?
ここのサイト様の例でいうと、「浅野」となっております。
行ラベルに


と縦書きで表示させたいのですが、どうしても設定方法が分かりません。
宜しくお願い致します。

[ツリー表示へ]
タイトルRe: MSCHARTの行ラベルについて
記事No13896
投稿日: 2009/07/29(Wed) 10:08
投稿者花ちゃん
サンプル投稿用掲示板の[ MSChart コントロール ワンポイントテクニック集(VB6.0)]の
No.16 あたりは、ご覧になりましたか?
http://hanatyan.sakura.ne.jp/samplepic/chartno16-1.gif

MSChart コントロール関係は、サンプル投稿用掲示板の方にまとめておりますので
参考にして下さい。
エクセルのグラフでできるような事で記載していないような事はできないと思って
下さい。

[ツリー表示へ]
タイトルRe^2: MSCHARTの行ラベルについて
記事No13897
投稿日: 2009/07/29(Wed) 13:16
投稿者subuconsearch
ご回答ありがとうございます。

> サンプル投稿用掲示板の[ MSChart コントロール ワンポイントテクニック集(VB6.0)]の
> No.16 あたりは、ご覧になりましたか?
こちらの方でsChartViewSet()プロシージャをつくり実践してみましたが、
このプロシージャで行うと、ラベル表示すらされない状況です。

[ツリー表示へ]
タイトルRe^3: MSCHARTの行ラベルについて
記事No13898
投稿日: 2009/07/29(Wed) 13:41
投稿者花ちゃん
> こちらの方でsChartViewSet()プロシージャをつくり実践してみましたが、
> このプロシージャで行うと、ラベル表示すらされない状況です。

余計なコード(CrLf 等のコード)が混じっていませんか?
今、念の為の掲載しているコードそのままをペーストして動作確認しましたが、図の
ように表示されましたが!
http://hanatyan.sakura.ne.jp/samplepic/chartno16-1.gif

[ツリー表示へ]
タイトルRe^4: MSCHARTの行ラベルについて
記事No13899
投稿日: 2009/07/29(Wed) 13:50
投稿者subuconsearch
ご回答ありがとうございます。

> 余計なコード(CrLf 等のコード)が混じっていませんか?
> 今、念の為の掲載しているコードそのままをペーストして動作確認しましたが、図の
> ように表示されましたが!

現在下記のコードを打ち込んでいます。
やっぱり思ったとおりになりません・・・。
何か設定が必要なのでしょうか?

private sub sChartViewSet()
   With MSChart1
      .Row = 1
      .RowLabel = "あいうえおかきくけこさしすせそたちつてと"
   End With
  
   With MSChart1.Plot.Axis(VtChAxisIdX).Labels.Item(1)
      .Auto = False
      .VtFont.Size = 12
      
      '下記では WordWrap が有効にならない。(;_;)
      '(方法があれば教えてください)
      .TextLayout.WordWrap = True
      
      
      '上揃えで表示
      .TextLayout.VertAlignment = VtVerticalAlignmentTop
      '縦書き表示
      .TextLayout.Orientation = VtOrientationVertical
   End With
end sub

[ツリー表示へ]
タイトルRe^5: MSCHARTの行ラベルについて
記事No13900
投稿日: 2009/07/29(Wed) 14:06
投稿者花ちゃん
> やっぱり思ったとおりになりません・・・。
> 何か設定が必要なのでしょうか?

思ったとおりになりません では、どのようにならないのか誰にも理解できません。

私が再確認した部分のコードだけ貼り付けても何の解決にもならないでしょう。

新たに Form に MSChart を張り付けて下記のコードをペーストして確認して見て下さい。

Option Explicit

Private Sub Form_Load()
   'フォームのサイズを設定(好みで変更してください)
   Form1.Move 0, 0, 10400, 7000
   'MSChart コントロールの表示サイズを設定
   MSChart1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
   Call sDataOpen       'データの読み込み
   Call sChartViewSet   'グラフの表示設定
End Sub

Private Sub sChartViewSet()
'グラフの表示設定
'------------------- グラフの種類を設定 ----------------------
   '設定しなければ、VtChChartType2dBar となる
   MSChart1.chartType = VtChChartType2dBar       'デフォルトのグラフタイプ(2D棒)
  
' コメントにしなくても問題なし だが見苦しいので今回はコメントにしております
'   With MSChart1
'      .Row = 1
'      'テスト用に長い文字列をセット
'      .RowLabel = "あいうえおかきくけこさしすせそたちつてと"
'   End With
  
   With MSChart1.Plot.Axis(VtChAxisIdX).Labels.Item(1)
      .Auto = False
      .VtFont.Size = 12
      
      '下記では WordWrap が有効にならない。(;_;)
      '(方法があれば教えてください)
      .TextLayout.WordWrap = True
      
      
      '上揃えで表示
      .TextLayout.VertAlignment = VtVerticalAlignmentTop
      '縦書き表示
      .TextLayout.Orientation = VtOrientationVertical
   End With
End Sub


Private Sub sDataOpen()
'グラフ用のデータを作成及び読み込み
   Dim Dat(0 To 5, 0 To 3) As Variant
   Dat(0, 1) = "国語"
   Dat(0, 2) = "数学"
   Dat(0, 3) = "英語"
  
   Dat(1, 0) = "浅野"
   Dat(1, 1) = 69       '国語の点数
   Dat(1, 2) = 81       '数学の点数
   Dat(1, 3) = 73       '英語の点数
  
   Dat(2, 0) = "安室"
   Dat(2, 1) = 87
   Dat(2, 2) = 80
   Dat(2, 3) = 72
  
   Dat(3, 0) = "加藤"
   Dat(3, 1) = 74
   Dat(3, 2) = 82
   Dat(3, 3) = 96
  
   Dat(4, 0) = "斉藤"
   Dat(4, 1) = 71
   Dat(4, 2) = 69
   Dat(4, 3) = 81
  
   Dat(5, 0) = "鈴木"
   Dat(5, 1) = 84
   Dat(5, 2) = 86
   Dat(5, 3) = 75
  
   'グラフに表示する配列データを設定する
   MSChart1.ChartData = Dat()
End Sub

Private Sub Form_Resize()
   'フォームのサイズ変更に合わせて MSChart コントロールの表示サイズも変更する
   MSChart1.Move 0, 0, Me.ScaleWidth, Me.ScaleHeight
End Sub

[ツリー表示へ]
タイトルRe^6: MSCHARTの行ラベルについて
記事No13901
投稿日: 2009/07/29(Wed) 14:18
投稿者subuconsearch
ご回答ありがとうございます。

> 思ったとおりになりません では、どのようにならないのか誰にも理解できません。
どのようにしたいのかは一番最初に記載しています。記載した上での質問をさせていただいております。

そのままコピペしたところ、このサイト様の例にあったようになりました。
ご教授ありがとうございました。
詳しく分析して応用させていただこうと思います。
ありがとうございました。

[ツリー表示へ]