PowerTools MultiRow for Windows Forms 8.0J
バーコードの設定

GcBarCodeCellのバーコードの設定方法について、以下に解説します。
バーコードの種類の指定
GcBarCodeCellを使用してバーコードの種類を指定するには、Typeプロパティで表示するバーコードの種類を選択します。
Imports GrapeCity.Win.MultiRow
Imports PlusPakCell = GrapeCity.Win.MultiRow.PlusPak

Dim GcBarCodeCell1 As New PlusPakCell.GcBarCodeCell()
' バーコードの種類を指定します。 
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13
GcBarCodeCell1.Value = 12345

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcBarCodeCell1})
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;
using PlusPakCell = GrapeCity.Win.MultiRow.PlusPak;

PlusPakCell.GcBarCodeCell gcBarCodeCell1 = new PlusPakCell.GcBarCodeCell();
// バーコードの種類を指定します。
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13;
gcBarCodeCell1.Value = 12345;

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcBarCodeCell1 });
gcMultiRow1.RowCount = 10;

バーコードの種類によっては、固有の値を設定することが可能です。バーコードの種類とGcBarCodeCellで固有値を設定するプロパティは下記の一覧のとおりです。
バーコードの種類 プロパティ名
Aztec Aztecプロパティ
CODE39 Code39プロパティ
FixLength プロパティ
CODE49 Code49プロパティ
Data Matrix DataMatrixプロパティ
GS1Composite GS1Compositeプロパティ
ITF ITFプロパティ
FixLengthプロパティ
MicroPDF417 MicroPDF417プロパティ
PDF417 PDF417プロパティ
POSTNET FixLengthプロパティ
QRコード QRCodeプロパティ
GS1 DataBar Expanded Stacked RSSExpandedStackedプロパティ
UPC/A/UPC/E/UPC/Eアドオン UPCプロパティ
バーコードに値を設定
バーコードを表示するにはValueプロパティにバーコード化する値を設定します。GcBarCodeCellは設定した値とバーコードの種類から、仕様に基づいてスタートキャラクタ、ストップキャラクタおよびチェックディジットを自動的に生成してバーコードを表示します。
チェックディジットを自動で設定しない場合には、CheckDigitプロパティをFalseに設定します。スタートキャラクタ、ストップキャラクタについては必ず自動で設定されます。
Dim GcBarCodeCell1 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13
' バーコードの値を設定します。 
GcBarCodeCell1.Value = "494924012510"
GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13;
// バーコードの値を設定します。 
gcBarCodeCell1.Value = "494924012510";


Valueプロパティではstring値で値を設定しますが、ValueBinaryプロパティを利用すると、値をバイト配列で設定することが可能です。
Dim GcBarCodeCell1 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13

' バーコードの値を設定します。 
Dim b As Byte() = New Byte(11) {}
b(0) = CByte(&H34)
b(1) = CByte(&H39)
b(2) = CByte(&H34)
b(3) = CByte(&H39)
b(4) = CByte(&H32)
b(5) = CByte(&H34)
b(6) = CByte(&H30)
b(7) = CByte(&H31)
b(8) = CByte(&H32)
b(9) = CByte(&H35)
b(10) = CByte(&H31)
b(11) = CByte(&H30)
GcBarCodeCell1.ValueBinary = b
GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。 
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.JAN13;

// バーコードの値を設定します。 
byte[] b = new byte[12];
b[0] = (byte)0x34;
b[1] = (byte)0x39;
b[2] = (byte)0x34;
b[3] = (byte)0x39;
b[4] = (byte)0x32;
b[5] = (byte)0x34;
b[6] = (byte)0x30;
b[7] = (byte)0x31;
b[8] = (byte)0x32;
b[9] = (byte)0x35;
b[10] = (byte)0x31;
b[11] = (byte)0x30;
gcBarCodeCell1.ValueBinary = b;

CODE128で値にFNC1などのファンクションキャラクタを設定する必要がある場合には、Valueプロパティの場合、Code128構造体の定数を利用します。GS1 DataBar Expanded/GS1 DataBar Expanded StackedにはRSSExpanded構造体の定数を利用します。なお、ValueBinaryプロパティの場合には&Hf1〜&Hf4(0xF1〜0xF4)のコードでファンクションキャラクタを設定します。

Imports GrapeCity.Win.MultiRow

Dim GcBarCodeCell1 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。 
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code128
' バーコードの値を設定します。  
GcBarCodeCell1.Value = "12" + GrapeCity.Win.BarCode.Options.Code128.FUNC1 + "34"


Dim GcBarCodeCell2 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。 
GcBarCodeCell2.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code128
' バーコードの値を設定します。 
Dim b As Byte() = New Byte(4) {}
b(0) = CByte(&H31)
b(1) = CByte(&H32)
b(2) = CByte(&HF1)  ' FNC1を指定
b(3) = CByte(&H33)
b(4) = CByte(&H34)
GcBarCodeCell2.ValueBinary = b

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcBarCodeCell1, GcBarCodeCell2})
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;

GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。 
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code128;
// バーコードの値を設定します。 
gcBarCodeCell1.Value = "12" + GrapeCity.Win.BarCode.Options.Code128.FUNC1 + "34";

GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell2 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。 
gcBarCodeCell2.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code128;

// バーコードの値を設定します。 
byte[] b = new byte[5];
b[0] = (byte)0x31;
b[1] = (byte)0x32;
b[2] = (byte)0xF1;  // FNC1を指定
b[3] = (byte)0x33;
b[4] = (byte)0x34;
gcBarCodeCell2.ValueBinary = b;

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcBarCodeCell1, gcBarCodeCell2 });
gcMultiRow1.RowCount = 10;
バーコード値のテキスト表示
バーコードイメージにはバーコード値がテキストで表示されます。バーコード値を非表示にする場合にはMessageプロパティをFalseに設定します。また、バーコード値のテキスト表示の位置やフォントを変更することも可能です。位置の変更はMessagePosプロパティ、フォントの変更はStyle.Fontプロパティで行います。

Imports GrapeCity.Win.MultiRow

Dim GcBarCodeCell1 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()

' バーコードの種類を指定します。  
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.ITF
' バーコードの値を設定します。  
GcBarCodeCell1.Value = "1490123456789"
' バーコードのテキストの位置を右揃えに設定します。  
GcBarCodeCell1.MessagePos = GrapeCity.Win.BarCode.ValueType.MessagePos.Right
' バーコードのテキストのフォントを設定します。  
GcBarCodeCell1.Style.Font = New Font("Meiryo UI", 8, FontStyle.Italic)

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcBarCodeCell1})
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;

GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();

// バーコードの種類を指定します。 
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.ITF;
// バーコードの値を設定します。 
gcBarCodeCell1.Value = "1490123456789";
// バーコードのテキストの位置を右揃えに設定します。 
gcBarCodeCell1.MessagePos = GrapeCity.Win.BarCode.ValueType.MessagePos.Right;
// バーコードのテキストのフォントを設定します。 
gcBarCodeCell1.Style.Font = new Font("Meiryo UI", 8, FontStyle.Italic);

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcBarCodeCell1});
gcMultiRow1.RowCount = 10;


バーコード値で表示されるテキストはValueプロパティで指定した値です。スタートキャラクタ/ストップキャラクタを出力したり(CODE39のアスタリスク(*)など)アプリケーション識別子を括弧で括って出力したりすることはできません。これらの情報をテキストで出力したい場合には、MessageValプロパティでテキストの情報を変更します。

Imports GrapeCity.Win.MultiRow

Dim GcBarCodeCell1 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。 
GcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code39
' バーコードの値を設定します。 
GcBarCodeCell1.Value = "1234567890"
' バーコードのテキスト値を設定します。 
GcBarCodeCell1.MessageVal = "*" + GcBarCodeCell1.Value.ToString() + "*"

Dim GcBarCodeCell2 As New GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell()
' バーコードの種類を指定します。 
GcBarCodeCell2.Type = GrapeCity.Win.BarCode.ValueType.BarType.EAN128
' バーコードの値を設定します。(括弧を除いた値) 
GcBarCodeCell2.Value = "01149123456789013012101234"
' バーコードのテキスト値を設定します。 
GcBarCodeCell2.MessageVal = "(01)14912345678901(30)12(10)1234"

GcMultiRow1.Template = Template.CreateGridTemplate(New Cell() {GcBarCodeCell1, GcBarCodeCell2})
GcMultiRow1.RowCount = 10
using GrapeCity.Win.MultiRow;

GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell1 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。 
gcBarCodeCell1.Type = GrapeCity.Win.BarCode.ValueType.BarType.Code39;
// バーコードの値を設定します。 
gcBarCodeCell1.Value = "1234567890";
// バーコードのテキスト値を設定します。 
gcBarCodeCell1.MessageVal = "*" + gcBarCodeCell1.Value.ToString() + "*";

GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell gcBarCodeCell2 = new GrapeCity.Win.MultiRow.PlusPak.GcBarCodeCell();
// バーコードの種類を指定します。 
gcBarCodeCell2.Type = GrapeCity.Win.BarCode.ValueType.BarType.EAN128;
// バーコードの値を設定します。(括弧を除いた値) 
gcBarCodeCell2.Value = "01149123456789013012101234";
// バーコードのテキスト値を設定します。 
gcBarCodeCell2.MessageVal = "(01)14912345678901(30)12(10)1234";

gcMultiRow1.Template = Template.CreateGridTemplate(new Cell[] { gcBarCodeCell1, gcBarCodeCell2 });
gcMultiRow1.RowCount = 10;

参照

 

 


© 2008-2015 GrapeCity inc. All rights reserved.