2011-02-04 10 views
1

本当に簡単な質問です。Itext myImage.Alignment = Image.TEXTWRAP | Image.ALIGN_RIGHT; VB相当ですか?

私はITextSharpを使用しており、画像の配置を設定しようとしています。 C#(すべての例あたりなど)で

それは次のとおりです。

myImage.Alignment = Image.TEXTWRAP | Image.ALIGN_RIGHT; 

私は相当出て働くことができない「|」をVBで。

Bexの

+0

[C#to VB Converter](http://www.developerfusion.com/tools/convert/csharp-to-vb/)に興味がある場合に備えてください。 –

+0

ありがとうございます。私は将来それを試してみましょう!私はそれが何らかの理由で何か特定のものだったと思った! :) – Bex

+0

@ブラッドクリスティ - "|"ただのORです。 "^"はC#の排他的論理和です。 – RQDQ

答えて

3
myImage.Alignment = Image.TEXTWRAP Or Image.ALIGN_RIGHT; 

EDIT:それがカバー(およびビット単位の演算子と論理演算子の間の差)の下で何が起こっているかを理解することが重要です。

私はあなたのサンプル中のフラグの実際のバイナリ値を持っていますが、さんはそのTEXTWRAPが0001バイナリであり、あなたがビット単位のOR 2ときALIGN_RIGHTが0010バイナリであると言うことはできません

ビットごとのOR

0010 
0001 
---- 
0011 

実際には各ビットを1つずつオンにします。この場合、TEXTWRAPとALIGN_RIGHTの両方のビットが設定されたマスクが作成されます。

ビット単位のAND

あなたは...あなたが欲しいTEXTWRAPとALIGN_RIGHTを何をしようとしての英語の記述にハングアップ取得しているようですね。あなたが興味を持っているのフラグのどちらが設定されていることを

0010 
0001 
---- 
0000 

注:あなたがビット単位およびこれらの2つの値のを実行しようとした場合、これは、言葉による説明から理にかなっている間。

+0

私はそれが正しいとは思っていましたが、文脈の中で正しいとは思われませんでした。それを試してみてください。 – Bex

+0

もしあなたが "And"にしたいのであれば、C#で&を使い、VBでAndを使います。 – Sean

+0

"または" VBでは "|"と同じです。 C#で。 VBでは "And"はC#の "&"と同じです。 – RQDQ

1

VBは、正確にリコールすると、ビット単位のOR演算子には|ではなく、Orを使用します。

ので、このはず作品:

myImage.Alignment = Image.TEXTWRAP Or Image.ALIGN_RIGHT 
1

これは、ビット単位のC#の演算子です。単にVBで "Or"に変更してください。