Win32 API 日本語リファレンス
ホームSystem.Ole › DROPEFFECT

DROPEFFECT

列挙型フラグ
基底型u4

メンバー 5

名前10進16進
DROPEFFECT_NONE00x0
DROPEFFECT_COPY10x1
DROPEFFECT_MOVE20x2
DROPEFFECT_LINK40x4
DROPEFFECT_SCROLL21474836480x80000000

公式ドキュメント

ドラッグ アンド ドロップ操作の効果に関する情報を表します。DoDragDrop 関数、および IDropSourceIDropTarget の多くのメソッドは、この列挙型の値を使用します。

定数/値 説明
DROPEFFECT_NONE
0
ドロップ ターゲットはデータを受け入れることができません。
DROPEFFECT_COPY
1
ドロップの結果はコピーになります。元のデータはドラッグ ソースによって変更されません。
DROPEFFECT_MOVE
2
ドラッグ ソースはデータを削除する必要があります。
DROPEFFECT_LINK
4
ドラッグ ソースは元のデータへのリンクを作成する必要があります。
DROPEFFECT_SCROLL
0x80000000
ターゲット内でスクロールが開始しようとしている、または現在発生しています。この値は他の値に加えて使用されます。

解説(Remarks)

アプリケーションでは、将来の実装との互換性を確保するために、DROPEFFECT 列挙型の値を常にマスクしてください。現時点では、DROPEFFECT 値のうち一部のビット位置だけに意味があります。将来的には、さらに多くのビットに対する解釈が追加されます。ドラッグ ソースとドロップ ターゲットは、比較を行う前にこれらの値を適切にマスクする必要があります。次のように、DROPEFFECTDROPEFFECT_COPY などと直接比較してはなりません。

if (dwDropEffect == DROPEFFECT_COPY)... 

代わりに、次のいずれかの手法を使用して、求める値を常にマスクしてください。

if (dwDropEffect & DROPEFFECT_COPY) == DROPEFFECT_COPY)...

if (dwDropEffect & DROPEFFECT_COPY)... 

これにより、既存のコードとの下位互換性を保ちながら、新しいドロップ効果を定義できるようになります。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum DROPEFFECT : unsigned int {
    DROPEFFECT_NONE = 0,
    DROPEFFECT_COPY = 1,
    DROPEFFECT_MOVE = 2,
    DROPEFFECT_LINK = 4,
    DROPEFFECT_SCROLL = 2147483648
} DROPEFFECT;
[Flags]
public enum DROPEFFECT : uint
{
    DROPEFFECT_NONE = 0,
    DROPEFFECT_COPY = 1,
    DROPEFFECT_MOVE = 2,
    DROPEFFECT_LINK = 4,
    DROPEFFECT_SCROLL = 2147483648,
}
<Flags>
Public Enum DROPEFFECT As UInteger
    DROPEFFECT_NONE = 0
    DROPEFFECT_COPY = 1
    DROPEFFECT_MOVE = 2
    DROPEFFECT_LINK = 4
    DROPEFFECT_SCROLL = 2147483648
End Enum
import enum

class DROPEFFECT(enum.IntFlag):
    DROPEFFECT_NONE = 0
    DROPEFFECT_COPY = 1
    DROPEFFECT_MOVE = 2
    DROPEFFECT_LINK = 4
    DROPEFFECT_SCROLL = 2147483648
// DROPEFFECT (flags)
pub const DROPEFFECT_NONE: u32 = 0;
pub const DROPEFFECT_COPY: u32 = 1;
pub const DROPEFFECT_MOVE: u32 = 2;
pub const DROPEFFECT_LINK: u32 = 4;
pub const DROPEFFECT_SCROLL: u32 = 2147483648;
// DROPEFFECT
const (
	DROPEFFECT_NONE uint32 = 0
	DROPEFFECT_COPY uint32 = 1
	DROPEFFECT_MOVE uint32 = 2
	DROPEFFECT_LINK uint32 = 4
	DROPEFFECT_SCROLL uint32 = 2147483648
)
const
  DROPEFFECT_NONE = 0;
  DROPEFFECT_COPY = 1;
  DROPEFFECT_MOVE = 2;
  DROPEFFECT_LINK = 4;
  DROPEFFECT_SCROLL = 2147483648;
// DROPEFFECT
pub const DROPEFFECT_NONE: u32 = 0;
pub const DROPEFFECT_COPY: u32 = 1;
pub const DROPEFFECT_MOVE: u32 = 2;
pub const DROPEFFECT_LINK: u32 = 4;
pub const DROPEFFECT_SCROLL: u32 = 2147483648;
const
  DROPEFFECT_NONE* = 0
  DROPEFFECT_COPY* = 1
  DROPEFFECT_MOVE* = 2
  DROPEFFECT_LINK* = 4
  DROPEFFECT_SCROLL* = 2147483648
enum DROPEFFECT : uint {
    DROPEFFECT_NONE = 0,
    DROPEFFECT_COPY = 1,
    DROPEFFECT_MOVE = 2,
    DROPEFFECT_LINK = 4,
    DROPEFFECT_SCROLL = 2147483648,
}
#define global DROPEFFECT_NONE   0x0
#define global DROPEFFECT_COPY   0x1
#define global DROPEFFECT_MOVE   0x2
#define global DROPEFFECT_LINK   0x4
#define global DROPEFFECT_SCROLL 0x80000000
; ※フラグ列挙型。ビットORで組み合わせ可(例: FOO|BAR)。