No.4ベストアンサー
- 回答日時:
こんなコードをでっちあげてみました。
いかがですか。
//終点に ">" を付ける
//nStartXPos, nStartYPos… 始点
//nEndXPos, nEndYPos… 終点
#include <math.h>
void C???View::Arrow(CDC * pDC, int nStartXPos, int nStartYPos, int nEndXPos, int nEndYPos)
{
inti;
intnX, nY;
doubledbAng;
#define LENGTH10//矢印の先の長さ
#define ANGLE(3.1415/180.0*30.0)//矢印の開く角度 … 現在30度
dbAng = 3.1415 + atan2(nEndYPos-nStartYPos, nEndXPos-nStartXPos);
for (i=-1; (i<=1); i+=2)
{
nX = (int)(cos(dbAng+ANGLE*i) * LENGTH) + nEndXPos;
nY = (int)(sin(dbAng+ANGLE*i) * LENGTH) + nEndYPos;
pDC->MoveTo(nEndXPos, nEndYPos);
pDC->LineTo(nX, nY);
}
}
No.3
- 回答日時:
MoveTo と LineTo で書く線は Word のような矢印が
付きませんから、やっぱり自力で矢印を書くしかないかなー。
「端点キャップ」に関しては下記の URL を見ると分かりやすいと思います。
参考URL:http://www.topposystem.co.jp/DL/Win32API/GUI/%E3 …
ありがとうございます。
端点キャップについても分かりやすい説明がありました。
結局、端点キャップでは問題は解決しないんですね、残念。
No.2
- 回答日時:
Windows & Visual C++ が前提ですと(書いてありませんが^^:)、
CDC に MoveTo と LineTo で描画出来ますよ。
もう少し puntoabart さんからの情報があると良いですね。
例えば、プラットホームと開発環境(IDE)の種類、それから
どこに描画するかの情報です。
この回答への補足
Windows 98とVisual C++6.0で作ってます。
(プログラム関連の質問で環境も書いてないのは問題ですね…。すいません)
MoveToとLineToで直線は引けるのは分かるのですが、
その直線の両端の形状を変更することはできるのでしょうか?
私がしたいのはそれなのです。
リファレンスを見ていると、CPenの引数に"PS_ENDCAP_~"というものがありました。
解説には「端点キャップ」と書いてありました。
これは私のしたいことに関係があるのでしょうか?
あ、ちなみに直線を描画するのはウィンドウ内です。
No.1
- 回答日時:
すいません。
質問の意味がよくわかりません。Word2000に図形描写があります。この中に矢印を描写出来る物があります。
これで矢印がかけます。
この矢印はある程度のグリットの点に乗ります。このグリット間(点と点の間)をもっと細かく任意に書きたいのでしょうか。
またはマクロで任意に矢印を書きたいという事でしょうか。
また「イメージとしては、WordやExcel、PowerPointの矢印描画あたりです。」のところがよく理解できません。どうもすいません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Word(ワード) WORD2007で矢印が変わる 1 2022/10/02 09:02
- PowerPoint(パワーポイント) PowerPointで曲線矢印を描きたいです 1 2022/05/04 14:39
- PowerPoint(パワーポイント) パワーポイント。2つの矢印のワイプ&消滅の順番に実施、これの繰り返し 2 2023/07/25 09:13
- Word(ワード) ワード。オブジェクトの一部分にグラデーションを塗るには 2 1 2022/10/04 16:25
- 物理学 電磁気学の問題について 1 2022/06/06 17:26
- CAD・DTP 「機能ブロック図」の描画用フリーソフトを教えてください 1 2022/09/23 16:12
- 地球科学 中学生 理科 1 2022/11/19 21:48
- Word(ワード) デスクトップアイコンにつくマークの意味が分かりません。 2 2023/03/13 18:07
- Windows 10 フォルダ内の全ての画像を矢印キーでスライドできるようにしたい 1 2022/10/21 12:53
- Word(ワード) パソコンのソフト、Wordで図形と図形の配置の幅を変えることはできるのでしょうか? 画像の、赤い矢印 1 2022/04/02 21:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MFCでOnPaintのタイミング
-
TextBoxに文字を書いても表示さ...
-
OnDrawが呼び出されません
-
MFC リストビューのツリー表示
-
NVIDIAのシェーダーキャッシュ
-
文字の行間
-
VB6,リストボックスの特定行の...
-
VBAにGDI+を参照させる方法
-
ビットマップを表示させる(MFC)
-
OneNote 2010 文字と描画がずれる
-
VC++プログラムをつかったBMP画...
-
ダイアログのボタンコントロー...
-
MFCのタイマーのつかい方を教え...
-
C++にて、塗りつぶされた円を描...
-
矢印を描画するには
-
ブレゼンハムのアルゴリズムに...
-
word
-
中抜き文字の印刷
-
StretchBlt関数について
-
[VB.net] DataGridViewの列ヘッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
NVIDIAのシェーダーキャッシュ
-
VB6,リストボックスの特定行の...
-
[VB.net] DataGridViewの列ヘッ...
-
word
-
UpdateData( FALSE); による文...
-
TextBoxに文字を書いても表示さ...
-
VC++プログラムをつかったBMP画...
-
MFCでOnPaintのタイミング
-
エクセルでガンチャートを作成...
-
InvalidateRectの使い方について
-
FlexGridの一部のみ表示を更新...
-
VB.NETでPictureBoxへの描画に...
-
MFCのタイマーのつかい方を教え...
-
CStaticコントロールの静的イメ...
-
VBAにGDI+を参照させる方法
-
画面全体を再描画させたい
-
Labelの文字をスクロールする際...
-
Form1 Load で実行されない。
-
panelのスクロール表示について
-
CScrollViewの使用方法について
おすすめ情報