VBA ¤È Java ¤Î¥ª¥Ö¥¸¥§¥¯¥È»Ø¸þ¥×¥í¥°¥é¥ß¥ó¥°

Top > Excel VBA ¤Ç¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó > Prototype¥Ñ¥¿¡¼¥ó

Prototype¥Ñ¥¿¡¼¥ó

Prototype¥Ñ¥¿¡¼¥ó¤Î¥µ¥ó¥×¥ë¥×¥í¥°¥é¥à¤òExcelVBA¤Çµ­½Ò¤¹¤ë¤È°Ê²¼¤Î¤è¤¦¤Ë
¤Ê¤ê¤Þ¤¹¡£¥â¥¸¥å¡¼¥ë¤´¤È¤Ë¥×¥í¥°¥é¥à¤ò¼¨¤·¤Þ¤¹¡£

¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsIProduct
Option Explicit

Public Sub use(pstrValue As String)
<font color="green">'</font>
End Sub

Public Function createClone() As clsIProduct
<font color="green">'</font>
End Function

ɸ½à¥â¥¸¥å¡¼¥ë¡§modCManager
Option Explicit

Public Function init1() As clsCManager
    Dim obj As clsCManager
    Set obj = New clsCManager
    obj.init1
    Set init1 = obj
End Function
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCManager
Option Explicit
<font color="green">'HashMap ¤ò Collection ¤ÇÂåÍÑ</font>
Private mcolShowcase As Collection

<font color="green">'¥³¥ó¥¹¥È¥é¥¯¥¿</font>
Public Sub init1()
    Set mcolShowcase = New Collection
End Sub

Public Sub register(pstrName As String, pobjProto As clsIProduct)
    mcolShowcase.Add pobjProto, pstrName
End Sub

Public Function create(pstrProtoname As String) As clsIProduct
    Dim objP As clsIProduct
    Set objP = mcolShowcase.Item(pstrProtoname)
    Set create = objP.createClone
End Function

ɸ½à¥â¥¸¥å¡¼¥ë¡§modCMessageBox
Option Explicit
<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone¤ò¹Ô¤¦¤¿¤á¤Ë¥æ¡¼¥¶¡¼ÄêµÁ·¿¤ò»È¤¦¡£</font>
Public Type gtypCMessageBox
    decochar As String
End Type

Public Function init2(pstrDecochar As String) As clsCMessageBox
    Dim obj As clsCMessageBox
    Set obj = New clsCMessageBox
    obj.init2 pstrDecochar
    Set init2 = obj
End Function
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCMessageBox
Option Explicit
Implements clsIProduct
<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone¤ò¹Ô¤¦¤¿¤á¤Ë¥æ¡¼¥¶¡¼ÄêµÁ·¿¤ò»È¤¦¡£</font>
Private mudtMember As gtypCMessageBox

<font color="green">'¥³¥ó¥¹¥È¥é¥¯¥¿</font>
Public Sub init2(pstrDecochar As String)
    mudtMember.decochar = pstrDecochar
End Sub

<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥á¥ó¥Ð¾ðÊó¤Î¼èÆÀ½èÍý</font>
Public Property Get member() As gtypCMessageBox
    member = mudtMember
End Property

<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone½èÍý</font>
Public Function clone2(pobjFrom As clsCMessageBox)
<font color="green">    '¥³¥Ô¡¼¸µ¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥á¥ó¥Ð¾ðÊó¤ò¼«Ê¬¼«¿È¤Î¥á¥ó¥Ð¾ðÊó¤Ë¥³¥Ô¡¼</font>
    mudtMember = pobjFrom.member
End Function

<font color="green">'----------------------------------------</font>
<font color="green">'clsIProduct ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤ò</font>
<font color="green">'clsCMessageBox ·¿¤ÎÊÑ¿ô¤«¤é¤â¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤¹¤ë</font>
<font color="green">'----------------------------------------</font>
Public Sub use(pstrValue As String)
    Dim lngLength As Long
    Dim lngCnt As Long
    lngLength = LenB(StrConv(pstrValue, vbFromUnicode))
    For lngCnt = 1 To lngLength + 4
        Debug.Print mudtMember.decochar;
    Next lngCnt
    Debug.Print
    Debug.Print mudtMember.decochar & " " & pstrValue & " " & mudtMember.decochar
    For lngCnt = 1 To lngLength + 4
        Debug.Print mudtMember.decochar;
    Next lngCnt
    Debug.Print
End Sub

Public Function createClone() As clsIProduct
    Dim objTo As clsCMessageBox
    Set objTo = New clsCMessageBox
    objTo.clone2 Me
    Set createClone = objTo
End Function

<font color="green">'----------------------------------------</font>
<font color="green">' clsIProduct ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹</font>
<font color="green">'----------------------------------------</font>
Private Sub clsIProduct_use(pstrValue As String)
    Me.use pstrValue
End Sub

Private Function clsIProduct_createClone() As clsIProduct
    Set clsIProduct_createClone = Me.createClone
End Function

ɸ½à¥â¥¸¥å¡¼¥ë¡§modCUnderLinePen
Option Explicit
<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone¤ò¹Ô¤¦¤¿¤á¤Ë¥æ¡¼¥¶¡¼ÄêµÁ·¿¤ò»È¤¦¡£</font>
Public Type gtypCUnderLinePen
    ulchar As String
End Type

Public Function init2(pstrUlchar As String) As clsCUnderLinePen
    Dim obj As clsCUnderLinePen
    Set obj = New clsCUnderLinePen
    obj.init2 pstrUlchar
    Set init2 = obj
End Function
¥¯¥é¥¹¥â¥¸¥å¡¼¥ë¡§clsCUnderLinePen
Option Explicit
Implements clsIProduct
<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone¤ò¹Ô¤¦¤¿¤á¤Ë¥æ¡¼¥¶¡¼ÄêµÁ·¿¤ò»È¤¦¡£</font>
Private mudtMember As gtypCUnderLinePen

<font color="green">'¥³¥ó¥¹¥È¥é¥¯¥¿</font>
Public Sub init2(pstrUlchar As String)
    mudtMember.ulchar = pstrUlchar
End Sub

<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥á¥ó¥Ð¾ðÊó¤Î¼èÆÀ½èÍý</font>
Public Property Get member() As gtypCUnderLinePen
    member = mudtMember
End Property

<font color="green">'¥¤¥ó¥¹¥¿¥ó¥¹¤Îclone½èÍý</font>
Public Function clone2(pobjFrom As clsCUnderLinePen)
<font color="green">    '¥³¥Ô¡¼¸µ¤Î¥¤¥ó¥¹¥¿¥ó¥¹¤Î¥á¥ó¥Ð¾ðÊó¤ò¼«Ê¬¼«¿È¤Î¥á¥ó¥Ð¾ðÊó¤Ë¥³¥Ô¡¼</font>
    mudtMember = pobjFrom.member
End Function

<font color="green">'----------------------------------------</font>
<font color="green">'clsIProduct ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥á¥½¥Ã¥É¤ò</font>
<font color="green">'clsCUnderLinePen ·¿¤ÎÊÑ¿ô¤«¤é¤â¸Æ¤Ó½Ð¤»¤ë¤è¤¦¤Ë¤¹¤ë</font>
<font color="green">'----------------------------------------</font>
Public Sub use(pstrValue As String)
    Dim lngLength As Long
    Dim lngCnt As Long
    lngLength = LenB(StrConv(pstrValue, vbFromUnicode))
    Debug.Print """" & pstrValue & """"
    Debug.Print " ";
    For lngCnt = 1 To lngLength
        Debug.Print mudtMember.ulchar;
    Next lngCnt
    Debug.Print ""
End Sub

Public Function createClone() As clsIProduct
    Dim objTo As clsCUnderLinePen
    Set objTo = New clsCUnderLinePen
    objTo.clone2 Me
    Set createClone = objTo
End Function

<font color="green">'----------------------------------------</font>
<font color="green">' clsIProduct ¤Î¥¤¥ó¥¿¡¼¥Õ¥§¥¤¥¹</font>
<font color="green">'----------------------------------------</font>
Private Sub clsIProduct_use(pstrValue As String)
    Me.use pstrValue
End Sub

Private Function clsIProduct_createClone() As clsIProduct
    Set clsIProduct_createClone = Me.createClone
End Function

ɸ½à¥â¥¸¥å¡¼¥ë¡§modCMain
Option Explicit

<font color="green">'¥á¥¤¥ó½èÍý£±</font>
Sub main1()
    Dim manager As clsCManager
    Dim upen As clsCUnderLinePen
    Dim mbox As clsCMessageBox
    Dim sbox As clsCMessageBox
    Dim p1 As clsIProduct
    Dim p2 As clsIProduct
    Dim p3 As clsIProduct
<font color="green">    '½àÈ÷</font>
    Set manager = modCManager.init1
    Set upen = modCUnderLinePen.init2("""")
    Set mbox = modCMessageBox.init2("*")
    Set sbox = modCMessageBox.init2("/")
    manager.register "strong message", upen
    manager.register "warning box", mbox
    manager.register "slash box", sbox
<font color="green">    'À¸À®</font>
    Set p1 = manager.create("strong message")
    p1.use "Hello, world."
    Set p2 = manager.create("warning box")
    p2.use "Hello, world."
    Set p3 = manager.create("slash box")
    p3.use "Hello, world."
End Sub

Top > Excel VBA ¤Ç¥Ç¥¶¥¤¥ó¥Ñ¥¿¡¼¥ó > Prototype¥Ñ¥¿¡¼¥ó

¤³¤Î¥Ú¡¼¥¸¤Ø¤Î¥³¥á¥ó¥È

13sqOy Major thankies for the blog.Really thank you!

0
Posted by check this out 2013ǯ12·î21Æü(ÅÚ) 11:00:43 ÊÖ¿®

VBADP06 - VBA �� Java �Υ��֥������Ȼظ��ץ����ߥ� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール 店舗 http://www.pslcbi.com/moncler2014.html

0
Posted by ãƒ¢ãƒ³ã‚¯ãƒ¬ãƒ¼ãƒ« 店舗 2013ǯ12·î09Æü(·î) 17:01:29 ÊÖ¿®

VBADP06 - VBA �� Java �Υ��֥������Ȼظ��ץ����ߥ� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール ダウン http://www.pslcbi.com/moncler2014.html

0
Posted by ãƒ¢ãƒ³ã‚¯ãƒ¬ãƒ¼ãƒ« ダウン 2013ǯ12·î07Æü(ÅÚ) 15:12:45 ÊÖ¿®

VBADP06 - VBA �� Java �Υ��֥������Ȼظ��ץ����ߥ� - Seesaa Wiki�ʥ������� for ���ޡ��ȥե��� モンクレール ダウン 2014 メンズ http://www.pslcbi.com/moncler2014.html

0
Posted by ãƒ¢ãƒ³ã‚¯ãƒ¬ãƒ¼ãƒ« ダウン 2014 メンズ 2013ǯ12·î07Æü(ÅÚ) 04:42:40 ÊÖ¿®

Xe4PSO <a href="http://pwxrhzwqiwde.com/">pwxrhzwqiwde</a>, [url=http://lqjcavassaso.com/]lqjcavassaso[/url], [link=http://tlznzyoturds.com/]tlznzyoturds[/link], http://glzufqimtdeg.com/

0
Posted by wkmqhsdlzi 2013ǯ11·î21Æü(ÌÚ) 18:39:40 ÊÖ¿®

¥³¥á¥ó¥È¤ò¤«¤¯


¡Öhttp://¡×¤ò´Þ¤àÅê¹Æ¤Ï¶Ø»ß¤µ¤ì¤Æ¤¤¤Þ¤¹¡£

ÍøÍѵ¬Ìó¤ò¤´³Îǧ¤Î¤¦¤¨¤´µ­Æþ²¼¤µ¤¤

ÊÔ½¸¤Ë¤ÏID¤¬É¬ÍפǤ¹