販売管理ソフトを作る - 「見積一覧」 明細部 初期化

「見積一覧」 明細部 初期化

■ modList


00207 '明細部 初期化
00208 Private Sub CreateDetail(objForm As frmList, ByRef iTop As Integer)
00209
00210 'パネル
00211 Dim pnlDetail As MSForms.Label
00212 Set pnlDetail = objForm.Controls.Add("Forms.Label.1")
00213 With pnlDetail
00214 .Left = MARGIN
00215 .Top = iTop + MARGIN
00216 .Height = 150 '適当に設定しておく
00217 .Width = objForm.Width - MARGIN - MARGIN - 5 '5 は 微調整
00218 .BorderStyle = fmBorderStyleSingle
00219 .BorderColor = LABEL_BORDER_COLOR
00220 End With
00221 iTop = iTop + MARGIN + MARGIN
00222
00223 Dim iCol As Integer
00224 Dim iRow As Integer
00225 Dim iLeft As Integer
00226
00227 iLeft = MARGIN + MARGIN
00228 For iCol = 0 To 5
00229
00230 '標題の背景
00231 Dim pnlDummy As MSForms.Label
00232 Set pnlDummy = objForm.Controls.Add("Forms.Label.1")
00233 With pnlDummy
00234 .Left = iLeft
00235 .Top = iTop
00236 .Height = LINE_HIGHT
00237
00238 Select Case iCol
00239 Case 0: .Width = 3 * 6 + PADING * 2 'No.
00240 Case 1: .Width = 9 * 6 + PADING * 2 '伝票番号
00241 Case 2: .Width = 11 * 6 + PADING * 2 '日付
00242 Case 3: .Width = 22 * 6 + PADING * 2 '部署
00243 Case 4: .Width = 22 * 6 + PADING * 2 '担当者
00244 Case 5: .Width = 23 * 6 + PADING * 2 '得意先
00245 End Select
00246
00247 .BorderStyle = fmBorderStyleSingle
00248 .BorderColor = CAPTION_BORDER_COLOR
00249 .BackColor = CAPTION_BACK_COLOR
00250 End With
00251
00252 '標題
00253 Dim capDummy As MSForms.Label
00254 Set capDummy = objForm.Controls.Add("Forms.Label.1")
00255 With capDummy
00256 .Left = iLeft
00257 .Top = iTop + PADING
00258 .Height = FONT_SIZE
00259 .Width = pnlDummy.Width
00260 .BackStyle = fmBackStyleTransparent
00261 .BorderStyle = fmBorderStyleNone
00262 .TextAlign = fmTextAlignCenter
00263
00264 Select Case iCol
00265 Case 0: .Caption = "No"
00266 Case 1: .Caption = "伝票番号"
00267 Case 2: .Caption = "日付"
00268 Case 3: .Caption = "部署"
00269 Case 4: .Caption = "担当者"
00270 Case 5: .Caption = "得意先"
00271 End Select
00272 End With
00273
00274 For iRow = 1 To ROW_NUM
00275 'ラベルの背景
00276 Dim pnlDummy2 As MSForms.Label
00277 Set pnlDummy2 = objForm.Controls.Add("Forms.Label.1")
00278 With pnlDummy2
00279 .Left = iLeft
00280 .Top = iTop + (LINE_HIGHT + MARGIN) * iRow
00281 .Height = LINE_HIGHT
00282 .Width = pnlDummy.Width
00283 .BorderStyle = fmBorderStyleSingle
00284 If iCol = 0 Then
00285 .BorderColor = CAPTION_BORDER_COLOR
00286 .BackColor = CAPTION_BACK_COLOR
00287 Else
00288 .BorderColor = LABEL_BORDER_COLOR
00289 .BackColor = LABEL_BACK_COLOR
00290 End If
00291 End With
00292 'ラベル
00293 Dim lblDummy As MSForms.Label
00294 Set lblDummy = objForm.Controls.Add("Forms.Label.1")
00295 With lblDummy
00296 .Left = iLeft + PADING
00297 .Top = iTop + (LINE_HIGHT + MARGIN) * iRow + PADING
00298 .Height = FONT_SIZE
00299 .Width = pnlDummy.Width - (PADING * 2)
00300 .BackStyle = fmBackStyleTransparent
00301 .BorderStyle = fmBorderStyleNone
00302
00303 Select Case iCol
00304 Case 0: .TextAlign = fmTextAlignCenter 'No.
00305 Case 1: .TextAlign = fmTextAlignCenter '伝票番号
00306 Case 2: .TextAlign = fmTextAlignCenter '日付
00307 Case 3: .TextAlign = fmTextAlignLeft '部署
00308 Case 4: .TextAlign = fmTextAlignLeft '担当者
00309 Case 5: .TextAlign = fmTextAlignLeft '得意先
00310 End Select
00311
00312 ' レイアウト調整用
00313 If DEBUG_MODE Then
00314 Select Case iCol
00315 Case 0: .Caption = "99" 'No.
00316 Case 1: .Caption = "99999999" '伝票番号
00317 Case 2: .Caption = "9999/99/99" '日付
00318 Case 3: .Caption = "1234567890" '部署
00319 Case 4: .Caption = "1234567890" '担当者
00320 Case 5: .Caption = "1234567890" '得意先
00321 End Select
00322 End If
00323 End With
00324 'コントロールの割り当て
00325 Select Case iCol
00326 Case 0 'No.
00327 Select Case iRow
00328 Case 1: Set objForm.lblNo00 = lblDummy
00329 Case 2: Set objForm.lblNo01 = lblDummy
00330 Case 3: Set objForm.lblNo02 = lblDummy
00331 Case 4: Set objForm.lblNo03 = lblDummy
00332 Case 5: Set objForm.lblNo04 = lblDummy
00333 Case 6: Set objForm.lblNo05 = lblDummy
00334 Case 7: Set objForm.lblNo06 = lblDummy
00335 Case 8: Set objForm.lblNo07 = lblDummy
00336 Case 9: Set objForm.lblNo08 = lblDummy
00337 Case 10: Set objForm.lblNo09 = lblDummy
00338 Case 11: Set objForm.lblNo10 = lblDummy
00339 Case 12: Set objForm.lblNo11 = lblDummy
00340 Case 13: Set objForm.lblNo12 = lblDummy
00341 End Select
00342 Case 1: '伝票番号
00343 Select Case iRow
00344 Case 1: Set objForm.lblDenpyoNo00 = lblDummy
00345 Case 2: Set objForm.lblDenpyoNo01 = lblDummy
00346 Case 3: Set objForm.lblDenpyoNo02 = lblDummy
00347 Case 4: Set objForm.lblDenpyoNo03 = lblDummy
00348 Case 5: Set objForm.lblDenpyoNo04 = lblDummy
00349 Case 6: Set objForm.lblDenpyoNo05 = lblDummy
00350 Case 7: Set objForm.lblDenpyoNo06 = lblDummy
00351 Case 8: Set objForm.lblDenpyoNo07 = lblDummy
00352 Case 9: Set objForm.lblDenpyoNo08 = lblDummy
00353 Case 10: Set objForm.lblDenpyoNo09 = lblDummy
00354 Case 11: Set objForm.lblDenpyoNo10 = lblDummy
00355 Case 12: Set objForm.lblDenpyoNo11 = lblDummy
00356 Case 13: Set objForm.lblDenpyoNo12 = lblDummy
00357 End Select
00358 Case 2: '日付
00359 Select Case iRow
00360 Case 1: Set objForm.lblDate00 = lblDummy
00361 Case 2: Set objForm.lblDate01 = lblDummy
00362 Case 3: Set objForm.lblDate02 = lblDummy
00363 Case 4: Set objForm.lblDate03 = lblDummy
00364 Case 5: Set objForm.lblDate04 = lblDummy
00365 Case 6: Set objForm.lblDate05 = lblDummy
00366 Case 7: Set objForm.lblDate06 = lblDummy
00367 Case 8: Set objForm.lblDate07 = lblDummy
00368 Case 9: Set objForm.lblDate08 = lblDummy
00369 Case 10: Set objForm.lblDate09 = lblDummy
00370 Case 11: Set objForm.lblDate10 = lblDummy
00371 Case 12: Set objForm.lblDate11 = lblDummy
00372 Case 13: Set objForm.lblDate12 = lblDummy
00373 End Select
00374 Case 3: '部署
00375 Select Case iRow
00376 Case 1: Set objForm.lblBusyo00 = lblDummy
00377 Case 2: Set objForm.lblBusyo01 = lblDummy
00378 Case 3: Set objForm.lblBusyo02 = lblDummy
00379 Case 4: Set objForm.lblBusyo03 = lblDummy
00380 Case 5: Set objForm.lblBusyo04 = lblDummy
00381 Case 6: Set objForm.lblBusyo05 = lblDummy
00382 Case 7: Set objForm.lblBusyo06 = lblDummy
00383 Case 8: Set objForm.lblBusyo07 = lblDummy
00384 Case 9: Set objForm.lblBusyo08 = lblDummy
00385 Case 10: Set objForm.lblBusyo09 = lblDummy
00386 Case 11: Set objForm.lblBusyo10 = lblDummy
00387 Case 12: Set objForm.lblBusyo11 = lblDummy
00388 Case 13: Set objForm.lblBusyo12 = lblDummy
00389 End Select
00390 Case 4: '担当者
00391 Select Case iRow
00392 Case 1: Set objForm.lblTanto00 = lblDummy
00393 Case 2: Set objForm.lblTanto01 = lblDummy
00394 Case 3: Set objForm.lblTanto02 = lblDummy
00395 Case 4: Set objForm.lblTanto03 = lblDummy
00396 Case 5: Set objForm.lblTanto04 = lblDummy
00397 Case 6: Set objForm.lblTanto05 = lblDummy
00398 Case 7: Set objForm.lblTanto06 = lblDummy
00399 Case 8: Set objForm.lblTanto07 = lblDummy
00400 Case 9: Set objForm.lblTanto08 = lblDummy
00401 Case 10: Set objForm.lblTanto09 = lblDummy
00402 Case 11: Set objForm.lblTanto10 = lblDummy
00403 Case 12: Set objForm.lblTanto11 = lblDummy
00404 Case 13: Set objForm.lblTanto12 = lblDummy
00405 End Select
00406 Case 5: '得意先
00407 Select Case iRow
00408 Case 1: Set objForm.lblTokui00 = lblDummy
00409 Case 2: Set objForm.lblTokui01 = lblDummy
00410 Case 3: Set objForm.lblTokui02 = lblDummy
00411 Case 4: Set objForm.lblTokui03 = lblDummy
00412 Case 5: Set objForm.lblTokui04 = lblDummy
00413 Case 6: Set objForm.lblTokui05 = lblDummy
00414 Case 7: Set objForm.lblTokui06 = lblDummy
00415 Case 8: Set objForm.lblTokui07 = lblDummy
00416 Case 9: Set objForm.lblTokui08 = lblDummy
00417 Case 10: Set objForm.lblTokui09 = lblDummy
00418 Case 11: Set objForm.lblTokui10 = lblDummy
00419 Case 12: Set objForm.lblTokui11 = lblDummy
00420 Case 13: Set objForm.lblTokui12 = lblDummy
00421 End Select
00422 End Select
00423 Next
00424
00425 iLeft = iLeft + pnlDummy.Width + MARGIN
00426 Next
00427
00428 'パネル高さ 調整
00429 pnlDetail.Height = (iTop + (LINE_HIGHT + MARGIN) * (ROW_NUM + 1)) - pnlDetail.Top
00430 iTop = pnlDetail.Top + pnlDetail.Height
00431
00432 'スクロールバー
00433 Dim vsbDummy As MSForms.ScrollBar
00434 Set vsbDummy = objForm.Controls.Add("Forms.ScrollBar.1")
00435 With vsbDummy
00436 .Width = 15
00437 .Left = pnlDetail.Left + pnlDetail.Width - .Width - MARGIN
00438 .Top = pnlDetail.Top + MARGIN
00439 .Height = pnlDetail.Height - MARGIN - MARGIN
00440 .Min = 0
00441 .Max = 0
00442 .Value = 0
00443 .TabStop = False
00444 End With
00445 Set objForm.vsbDetail = vsbDummy
00446 End Sub