/*
    KAB-studio.h
        @j`a|ŐTXVe
        i[ꂽwb_[t@Cłi΁jB

    (C)KAB-studio 1999 - 2001 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com

    MF 2001/02/26(Mon) No.096
    zMF 3900i Mag2 + Pubzine j
    sF ܂܂( URL: http://www.mag2.com/  ID: 0000012198 )
    sF Pubzine( URL: http://www.pubzine.com/  ID: 590 )
*/

/*               zM͂RSij̗\                   */

ERSTUiEE΁j͗sɍsĂ\ȂŁÂ
߂ɔzM͂RSijɂȂ܂B䗹Bڂ͍ŌɁB


/*              QOOPNQQUij̍XV                  */
http://www.kab-studio.com/

ECodian Ƀy[Wǉ
@ Codian Ƀy[Wǉ܂B STL & iostream 傩 
iostream  #21 - #24 ǉB
[ Codian ]
http://www.kab-studio.com/Programing/Codian/
[ STL & iostream  ]
http://www.kab-studio.com/Programing/STLiostream/


/*                        `[ʂȓL                        */
http://www.kab-studio.com/nikki2/

2001/02/18 (Sun)
@_v[ Codian  Perl vO~OɃMeBMA
[NX()BȂ񂩖Z˂B́ÂPTԂ̗\ł
̂II

2001/02/19 (Mon)
@_v[nPځB̂Ƃ͂قǂڂ낪oB
Վ쐬B͍x̗ső劈I@̗\B

2001/02/20 (Tue)
@_v[BÄËLɎlꔪAĎ̌E
@ɊA̕sbȂɑłЂ邱Ƃ΂II@҂ɂ
ȂccBƂRc͂񂾂ALlɃtH[
()ƁB

2001/02/21 (Wed)
@_v[nQځBڂ낪o()BƂɂ
xȂႢȂłƕςĈËL邱ƂɁB{Ԃ͖I

2001/02/22 (Thu)
@Ƙ_v[e[V{ԁBɂyII@U[hƂȂ
ĂɓG͂ȂI@đ_njI@Ƃ肠łЂƈSł
ȁ[B

2001/02/23 (Fri)
@ЂƈSȂ񂩖Z()BɗssAz[y[W⃁
}K̍XVȂႢȂAR\ȂႢȂB
ȂȂQXqbgB\ɑĂȂB

2001/02/24 (Sat)
@}قŖ{Ă[Bnǌ\BƂ 
MP3 vC[BԂ[߂II


/*                         L̗JT                             */
http://www.kab-studio.com/Programing/KabuU/

2001/02/18 (Sun)
Perl vO~O
R[h̕ϊ܂Ȃ
ւ
NX̒lԂƃNX̎QƕԂARX^gNX̎QƕԂ
RX^gNX̒lԂ̎gȂ
CTest func(), CTest &func(), const CTest func(), const CTest &func() 
const CTest func() ͂܂gȂ
CTest func() v͂킴ƃRs[肽ꍇɎg
CTest &func()  const CTest &func() ̓oϐ̏ꍇ
ݗpƓǂݍݗp

2001/02/19 (Mon)
Perl vO~O
Վ쐬
ւ
̕`ɂ́H
ȒPȕ@͂Ȃ
AlphaBlend()  TransparentBlt() g邩
Knowledge Base  Article ID: Q79212 ͈Ⴄۂ
esNZŁA`挳ɓx|ĕ`ɉ̂
GetPixel() Ƃ SetPixel() 

2001/02/20 (Tue)
x

2001/02/21 (Wed)
x

2001/02/22 (Thu)
x

2001/02/23 (Fri)
XML vO~O
@IT ́u VBScriptXMLvO~OvQlɂ
܂Ȃ
UTF-8 ŕۑKv
 encoding="Shift_JIS" 邩
ւ
OnMouseOver OnMouseOut ̂悤ȃCxg͂ȂH
^C~O WM_MOUSEMOVE 𒲂ׂ邵Ȃ
ꂽƂ _TrackMouseEvent()  WM_MOUSELEAVE 
bZ[ẂuړĨEBhEvɑ邩TuNXȂ

2001/02/24 (Sat)
XML vO~O
 VBS TveXg
MSXML ̃t@X C++ ̂ƂȂ񂩈Ⴄ
em[hċAĂяoĂ
nodeValue ɒli[ł
DOMDocument.save( "Sample_Out.xml" ) ŐVKt@Cɕۑł
Ƃ͂܂ȏԂۑł邩ǂ
̑pꂾƂˑƂ


/*             vO~OET̒ǉP                 */
http://www.kab-studio.com/Programing/Dictionary/

EǉPF
argc argv CAB JobW 

ET̏󋵁F
@ɗđ厖ȒP argc  argv ̂炵()BȑO
ǖZ͂ȂȂŁA[ĂvƎvłB


/*                       ؂̗JT                           */
http://www.kab-studio.com/Programing/KanaU/

ev[g
#14 typedef

@NXev[ggƂɂ́A typedef ꏏɎgƂ
ɑȂ܂B

@ typedef gʂ̂ЂƂ́AꉞNXev[gƂč
邯ǁAʂ̃NXƂĎgƂAĂꍇBƂ΁A
W C++ Cu std::string ́A std::basic_string< char > 
typedef ́BƂ΂ȊɁB

typedef basic_string<char, char_traits<char>, allocator<char> >
    string;

@ std::basic_string ́Ai[邽߂̃NXev[gB
̊̕i[̈͂^̃jAȗ̈ƂĊmۂ񂾂ǁA
̌^ev[gŎwł悤ɂȂĂłBƂ΁A
ʂ̕Ȃ char A Unicode gȂ wchar_t AĂ
ɁB
@łۂɂ char  wchar_t gȂÂ߂ typedef
łꂼ std::string  std::wstring Ă^ƂĒ`Ă
łBA͒PȂʖAev[gɂ܂
ʂ̌^gƂł邵ˁB
@͂AŃNXev[gꍇBNX
ev[gzgɔėpĂǂȌ^ɂgȂ炱K
v͂ȂǁAꕔ̌^ev[gɎȂĂꍇ
ɂ typedef ƂˁB

@Ɋ֘A typedef ̎gƂāAXʂ̃NX̂
NXev[gƂ typedef gƂ܂B
@ CTest ăNXĂƎgĂ񂾂ǁANXe
v[gƂč蒼KvoĂďꍇB̂܂܃NXe
v[gɂA CTest gĂȂႢ
ȂȂłB
@ŁANXev[g͕ʂ̖OƂčāA typedef  CTest
ĖOɂႤ@̂܂BƂ CTest ͂̌^g
Ă͂Ǎ^ typedef Ⴆ΂킯B
@ std::string Ȃ񂩂 typedef Ă̂͂̕ӂ̗R
肵܂BƎgĂNXev[gƂɂ́A̕
@ĂƉĂĂˁB͌^oɂāBˁB


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~[KCM]
wˁ[AƐSzɂȂ񂾂ǁx
uǂ́Hv
wꂿ܂ .Net Ƃ XML Ƃ Java ƂsĂ񂶂x
umɗsĂ˂BłΔ͍̕׋ĂΑvv
wȂ́Hx
uΔɋĂ邱Ƃ́ÂǂȎɂpł邱Ƃv
w܂b̊bĂƁHx
uB͖ꒃx݂ǁv
wQNځccx
ułƏgbvx̃vO}[Iv
wI@ł󂿂̓gbvxɌȂǁx
uIHv
http://www.kab-studio.com/
_______________________________________________________________[KCM]


/*                       #pragma twice                            */
http://www.kab-studio.com/Programing/PragmaTwice/

@Version 5.31
R{{bNXƃGfBbg{bNX

uO̓t@C_CAOgĂ݂܂v
w CFileDialog ăNXŊȒPɂłˁ[BŁÅJt@C
ǂݍނ񂾂ˁx
uB CFileTestDlg::OnBtnShow() ̒Łccv

void CFileTestDlg::OnBtnShow() 
{
    m_cDataLstBox.ResetContent();

    std::ifstream cIFStrm;
    cIFStrm.open( "Data.txt" );    // I
// ȉ

u "Data.txt" ̊Jt@C̃tpXɒu
܂܂v
włǁ[ēńH@o֐Ⴄx
uŁqR{{bNXrg܂v
wڂڂHx
u IDC_CMB_FILE  ID tRg[B Ver 5.01 ( No.066 ) 
ƂĂˁv
wA[t@C]̉ÊׂˁBR{āA`LƃtCh|egƂ
ꏏ̃ZbgR{Ƃ[ˁx
uƓBR{{bNX́AGfBbg{bNXƃXg{bNX
gݍ킳ĂłB Spy++ NĂeXgsĂ݂āv
w͂񂱂݂ȃ{^Ix
uʂ Spy++ ̏Əd˂ ComboBox ďołv
w񂻁[[EBhENXˁx
u̓ɏƏĂƁccv
w Edit ɂȂIIx
u܂肱̕ʂɌƂ̓GfBbg{bNXv
w[x
uŁẢ [] ƏoĂ̂qhbv_EXgr
񂾂ǁAꂪXg{bNXōĂ܂v
wXg{bNXccނނށA Spy++ ᒲׂȂˁx
uˁv
wcc[ȂŃXg{bNXĂ킩́Hx
u[AĂ񂾂悻B MSDN  Combo Boxes Overview ăy[
WĂ݂āv
wpy[WˁBց[ANX COMBOBOX ƂA list box  edit 
control ̑gݍ킹ƂĂ񂾂ˁx
uyցzĂƁAǂǂ񌩂v
wFXׂĂ񂾂ˁccAbZ[Wۂ̂oĂB
R{{bNX̃bZ[W CB_ Ȃ񂾂ˁx
úyză{^Ă݂āv
wڎ{^ˁB\[Ƃɂy[Wˁx
u̕ Platform SDK Ăłv
w񂠂x
uȉɏĂ̂AEBhEŶ̂̎dlv
wdlccāAꕶ͂Ȃ葽ȂHx
u[BR{{bNXłTOy[Wȏ゠݂v
wTOy[WȏIH@A[AbZ[WƂ API ̕ĂˁB
łȂ蕪ʂˁB͂Aāx
uÃRg[炢邩v
wʁccx
u Platform SDK ɂ͏dvȂƂĂ邱ƑA܂߂Ɍ
悤ɂˁv
wčŏɌׂƂȂHx
uAx׋ƂȂƌĂłȂv
w`BI@ՂƂӂ[ނł[[Ăǁ[[݁Hx
uvbgtH[Ă̂ OS ̂Ɓv
w܂EBhEYHx
u䂱ƁB SDK  Software Development Kit ̗B܂\tg
邽߂̂̂̂Ɓv
w\tg邽߂̂́Hx
u܂ API ̂Ɓv
wIx
u API ̓EBhEYAv邽߂̃LbgĂƂˁB܁A{
Iɂ SDK  API ͓ɍlĂȁv
wႤƂĂHx
u API Ă[Ɗ֐̂ƎwƂȁBAOg
MAX_PATH ݂Ȑl API Ƃ͌Ă΂ȂƂ݂ǁv
w SDK ̂̂ĂƂȂ̂ˁBĂƂ SDK ̒ API 
ĂĂƂȂ̂ȁx
ulł邩ȁBƁAbꂿˁv
wR{{bNXˁB[ɃGfBbg{bNXƃXg{bNX
ăR{{bNXɂȂĂ񂾂ˁx
u䂱ƁB܁A̕ӂ̌Ȃ񂾂ǂˁv
wǂ䂱ƁHx
úccˁAoϐĂ݂Ε邩ȁBXg{bN
X݂̎ɁA IDC_CMB_FILE 𑀍삷郁oϐ܂傤v
wXg{bNX m_cDataLstBox ݂Ȃ̂ĂƂˁx
u܂ ClassWizard _CAO\āyNXz CFileTestDlg
ɂȂĂ̂mFĂyRg[ ID z IDC_CMB_FILE _u
NbNv
wyoϐ̒ǉz_CAOoByϐ̃^Cvz CString
Ȃ񂾂ˁx
uR{{bNX̓GfBbg{bNXƂĂ@\邩A̕
CString Ƃ@̂񂾂ǁA̓pXByJeSz
qRg[rɂāv
wyϐ̃^Cvz CComboBox ɂȂIx
uȂ CComboBox NXgăR{{bNX𑀍ł邩v
w CString ̕Ƃ삪łȂHx
u䂱ƁBvZ@ƂɂłA UpdateData( FALSE ) 
ĂԂƁAoϐ̒lRg[ɏ܂Ăv
wI@AGfBbg̕ CString ^̃oϐƌ
tāAݓǂݍ݂ł悤ɂ邱Ƃł񂾂ˁx
uڂ Ver 3.11 ( No.036 ) QƁBłAR{{bNX̓Xg{b
NXƂĂ̑Kvłv
w CComboBox ^̃oϐłĂƂɂȂ񂾁BĂƂ
ӂoϐĂƁHx
uł񂾂ǂˁv
wuˁvāH@܂ȂĂƁHx
u܁[ˁBR{{bNX𑀍삷郁oϐӂ獬
ˁv
wccȂ񂩎ς؂Ȃˁx
ułӂyďꍇ邩ˁB CComboBox 
ɂ邯ǁv
w܁Amɍ̌Ă͕̂ȂȂǂˁB[ƁAo
ϐ̖O m_cFileCmbBox łHx
unjv
w񂶂yJeSzRg[Ayϐ̃^Cvz CComboBox 
 OK ƁBقoϐłx
uāAႠ̃R{{bNXɕ\܂傤B CComboBox 
̃t@Xāv
wo֐ꗗ`Bccccˁ[AGfBbg{bNX̂Ƃɂǁ[
Ċ̃o֐݂Ȃ񂾂ǁx
uAȂłv
wIIx
uȂł˂A CString gĂĂĂƂˁv
w[A[ʓ|ȕ@KvȂ񂾁x
uAʂɂ킯Ȃ񂾂ǂˁB[ƁA MSDN 
 Combo Boxes Overview ̃y[WJāv
wقx
uyցz{^x Edit Control Selection Fields 
y[W\ēǂł݂āv
wقoB[ƂȂɂȂɁccA WM_SETTEXT ĂI@
EBhẼ^CgƂA{^̕ςƂɎĝˁx
uBΕƂAR{{bNXɂ̃bZ[W
𒼐ڑ΁AGfBbg{bNXɑāAGfBbg{bNX̕
邱Ƃłłv
wvoI@ WM_SETTEXT  SetWindowText() ƓȂ񂾂ˁB
ĂƂ͂ API g΂񂾁Ix
u API ȂĂvłv
wH@[ƁA SetWindowText() ́cc CWnd ̃o֐ɂȂ
ĂˁBARg[̃NX CWnd pĂ邩Ix
uƁI@ CComboBox  CWnd ̃o֐głB
킯ŁAO CFileTestDlg::OnBtnBrowse() ̒g
Ă݂܂傤v

void CFileTestDlg::OnBtnBrowse() 
{
    CFileDialog cFileDlg( TRUE );
    char chPath[MAX_PATH];
    GetModuleFileName
        ( AfxGetInstanceHandle(), chPath, MAX_PATH - 1 );
    cFileDlg.m_ofn.lpstrInitialDir = chPath;

    int iRes
        = cFileDlg.DoModal();
    if( iRes == IDCANCEL )
    {
        return;
    }

    // ̉̍sB
    m_cFileCmbBox.SetWindowText( cFileDlg.GetPathName() );
}

wȂقǁA m_cFileCmbBox 炻̂܂ SetWindowText() Ă񂶂Ⴆ
񂾁x
uŁAOg CFileDialog::GetPathName() Ƒgݍ킹΁v
wrhĎsI@t@C_CAOŃt@CIŁyJzƁB
I񂾃t@C̃tpXR{{bNXɁIIx
uAł CFileTestDlg::OnBtnShow() ̕Ⴂ܂
B SetWindowText() ̋tɕ擾̂́v
w GetWindowText() II@ MSDN ̃t@X`ƁAQԖڂ̂悭
ȂPԖڂ̂ł[B LPTSTR 當zpӂāATCY
́ccx
uOłAtpX͍őv
w MAX_PATH ܂ŁI@AȊȁHx

void CFileTestDlg::OnBtnShow() 
{
    m_cDataLstBox.ResetContent();

    char chPath[MAX_PATH];
    m_cFileCmbBox.GetWindowText( chPath, MAX_PATH - 1 );
    std::ifstream cIFStrm;    
    cIFStrm.open( chPath );
// ȉ̂܂܁B

wrhĎsAyQƁz{^Ńt@C_CAO Data.txt I
ŊJāAŁy\z{^āccAO݂Xg{b
NXɕ\ꂽIIx
u܂łłƁAȂ񂩂ƂAvۂˁv
wAvۂII@Ȃ񂩂`IIx
u܁A悤ɃR{{bNX SetWindowText() ƂŃGfBbg
삪łĂƂˁv
wȂ񂾁Aς CString ͗vȂ񂾂ˁx
ułPlłĂƂA[[Ƃ킩ƎvHv
wvȂB CComboBox ̃oϐ SetWindowText() ĂԂĔ
zoĂȂA܂łǂ蒅̂ςx
u CString ̕@ĂƂB MFC ͌XȒPɂ
Ƃł悤ɂĂĂ邩ˁv
wmɂˁ[x

/*
    Preview Next Story!
*/
wR{{bNXЂƂł[̂˂x
uĂ݂鑤l΂Rv
wI@IHx
uR{{bNXăvOƂč킯v
wႻǁx
uЂƂЂƂAǂdlɂׂnlĂ񂾂v
wƂ킯Ŏx
 Version 5.32 R{{bNX̃XgɒǉI 
uɂÂIv
wcczgɏnlĂƎvHx
uhv


/*                QOOPNRRiyj̍XV\              */
http://www.kab-studio.com/

ER\oI
@o^CłŐV\łB́ccdm
RĂijB


/*    QOOPNRSTUiEE΁j͂ɂ܂    */

@ƑsăcłRSTUiEE΁j̓z[y[W̍X
Vx݂܂B
@V\⎫̍XV͂RRiyjɁA KAB-studio.h ̔zM͂RS
ijɍs܂B
@L̗JT͂x݂܂B`[ʂȓLx݁AǗՎ
͏ނ̂łĂˁB


/*                          ӁII                            */

Ẽ[ԐMȂłB
EӌE]Ez[`[ʂȓL]肨肭B
http://www.kab-studio.com/nikki2/
EvO~OɊւ鎿[L̗JT]ɂ肭B
http://www.kab-studio.com/Programing/KabuU/
EwǓo^Ƃɂ͂̃y[WōsȂĂB
http://www.mag2.com/m/0000012198.htm
http://www.pubzine.com/detail.asp?id=000590
E͎ōsȂĂB
EobNio[͂̃y[Wɂ܂B
http://backno.mag2.com/reader/Back?id=0000012198
http://www.kab-studio.com/Freeware/

/*
    KAB-studio.h
    Weekly Mail Magazine.
    Written by Kaburaya Seiden.

    (C)KAB-studio 1999 - 2001 ALL RIGHTS RESERVED.
        http://www.kab-studio.com/
        info@kab-studio.com
*/


/*                      See you next week!!                      */


