|
|
 |

 |
|
Programming Microsoft® Windows® with Microsoft Visual Basic® .NET (Core Reference)
|
|
 |
Author |
 |
Charles Petzold
|
 |
|
Pages |
1344
|
|
Disk |
N/A
|
|
Level |
All Levels
|
|
Published |
07/31/2002
|
|
ISBN |
9780735617995
|
|
ISBN-10 |
0-7356-1799-6
|
|
Price(USD) |
$59.99
To see this book's discounted price, select a reseller below.
|
|
|
|
|
 |
|
|
Index
Send feedback about this index to mspindex@microsoft.com
Symbols and Numbers
+, &, +=, and &= operators for concatenating strings, 10, 1241
14-15 (15-, Jeu de Taquin) puzzle, 463-68, 651
A
about box, 738-41
AboutBox class, 740
AboutBox.vb program, 738-41
AboutDialogBox class, 740
accelerators, 645
AcceptButton property, 733-34, 738, 741, 844
AcceptsReturn property, 844
AcceptsTab property, 844
access modifiers, 20
Acos method, 1230
Action property, 1061, 1062, 1175
Activate method, 207
Activated event, 207
activation, 1086
Activation property, 1086
active form, 206-7
Active property, 877-78
ActiveBorder property, 109, 111
ActiveCaption property, 109, 111
ActiveCaptionText property, 109, 110, 111
ActiveForm property, 206-7
Add method, 347, 439, 529-30, 566, 664, 665, 666, 669, 885, 959, 974, 1056, 1057, 1080, 1081, 1083, 1085
AddArc method, 690, 694
AddBézier method, 694
AddBéziers method, 694
AddClosedCurve method, 696
AddCurve method, 694
AddDirectories method, 1067, 1068
AddEllipse method, 696
AddExtension property, 777
AddHandler statement, 63
AddingConstructors.vb program, 32-34
AddingMethods.vb program, 18-19
AddLine method, 690, 694-96, 701, 930
AddLines method, 694
AddMetafileComment method, 1110
AddPath method, 696-97
AddPie method, 696
AddPolygon method, 696
AddRange method, 566, 571, 664, 885, 890, 959, 1056, 1080, 1081, 1083
AddRectangle method, 696
AddRectangles method, 696
AddString method, 697, 930, 931, 932, 934, 935, 938, 948
AddStrip method, 529, 530, 973
AdjustableArrowCap class, 836
AfterCheck event, 1062
AfterCollapse event, 1061
AfterExpand event, 1061
AfterLabelEdit event, 1062
AfterSelect event, 1061
AgeOfInnocence.vb program, 420-21
AliceBlue property, 106, 107, 108
alignment of text, 403-8
Alignment property, 117, 119, 394, 403-4, 405, 406, 824, 960, 961
AllAboutFont.vb program, 373-74
AllowDrop property, 1170, 1174
AllowedEffect property, 1171, 1172
AllowFullOpen property, 759, 760-61
AllowMargins property, 1028
AllowOrientation property, 1028
AllowPaper property, 1028
AllowPrinter property, 1028
AllowPrintToFile property, 1023, 1024
AllowSelection property, 1023
AllowSomePages property, 1023
alpha channel, 473
Alt property, 210
American Standard Code for Information Interchange (ASCII), 235-36
AnalogClock.vb program, 461-62
Anchor property, 557-61, 562, 564, 840, 883
AnchorStyles enumeration, 558
animation, 521-27
animation programs
Bounce.vb, 525-27
DualWink.vb, 523-25
Wink.vb, 522-23
anti-aliased text, 394-96
AntiAliasedText.vb program, 395-96
anti-aliasing, 174-77
AntiAlias.vb program, 175-76
AntiqueWhite property, 106, 107, 108
AnyColor property, 759
Appearance enumeration, 572-73
Appearance property, 572, 593, 975, 976, 983-84
AppendText method, 1214, 1215
Application class, 55
Apply button, 747-50
Apply event, 748, 759
AppStarting property, 326
AppWorkspace property, 109, 111
ArbitraryCoordinates.vb program, 273-75
arcs, 190-93
drawn with Bézier splines, 621-24
ArgumentOutOfRangeException exception, 27
Arial fonts, 354
ArrangeStartingPosition property, 131
array sorting and searching, 1252-55
array variables, 14-15
ArrayList class, 346-47, 700
ArrayList object, 347-48, 349, 515, 700
arrays of points, 89-90
Arrow property, 326
art, from Bézier splines, 624-26
Asc function, 1235
ascenders of fonts, 382
Ascent metric, 381-82, 383
ASCII (American Standard Code for Information Interchange), 235-36
ASCII control keys, 214-15
ASCII property, 1190-92
AscW function, 1235
Asin method, 1230
Assembly keyword, 884
Assembly.LoadWithPartialName method, 884
Atan method, 1230
Atan2 method, 1230-31
Attributes property, 1208, 1213
Augmentation Research Center, 295
AutoScaleBaseSize property, 584-85, 587
AutoCheck property, 569-70, 592-93
AutoFlush property, 1192
AutomaticDelay property, 878
AutoPopDelay property, 878
auto-scale option for controls
AuoScaleBaseSize property, 584-85, 587
introduced, 581-83
Scale method, 584-87
Windows Forms Designer and, 583-84
AutoScale property, 582
AutoscaleBaseSize property, 582-83, 584
AutoScaleDemo.vb program, 585-87
auto-scroll approach, 141
AutoScroll property, 141, 142, 145, 146, 149, 954-57, 1074
AutoScrollMargin property, 144, 145
AutoScrollMinSize property, 145, 146, 148, 149
AutoScrollPosition property, 145, 146, 148, 150, 154, 224
AutoSize property, 576, 605, 740-41, 840, 960, 961-62
B
b prefix, 40
BackColor property, 59, 68, 106, 107, 113, 462, 532, 538, 546, 609, 663, 676-77, 756, 757, 954, 1045, 1052, 1083
BackgroundColor property, 784
BackgroundImage property, 954
BarBreak property, 654-55
baseline of fonts, 382, 383-84
BaselineTilt.vb program, 926-28
BaseStream property, 1192, 1194
BASIC (Beginner's All Purpose Symbolic Instruction Code), 1
BCD (binary-coded decimal) type, 1219
BeforeCheck event, 1062
BeforeCollapse event, 1061
BeforeExpanded event, 1061
BeforeLabelEdit event, 1062
BeforeSelect event, 1061
BeginContainer method, 268
Beginner's All Purpose Symbolic Instruction Code (BASIC), 1
BeginPath function, 690
BeginPrint event, 1007, 1008
BeginUpdate method, 1059
BetterBlockOut.vb program, 315-17
BetterContextMenu.vb program, 661-63
BetterDialog.vb program, 736-38
BetterFamiliesList.vb program, 387
BetterFontAndColorDialogs.vb program, 762-63
BetterImageFromFile.vb program, 480
BetterPieChart.vb program, 196-97
Bézier, Pierre Etienne, 611
Bézier splines
arcs with, 621-24
art, 624-26
circles with, 621-24
in clipped text, 942-44
clock programs, 617-19
collinear, 619-21
introduced, 611-12
mathematical derivation, 626-30
in practice, 612-16
BézierArt.vb program, 624-26
BézierCircles.vb program, 623-24
BézierClockControl class, 617, 618
BézierClockControl.vb program, 617-18
BézierClock.vb program, 618-19
BézierManual class, 629
BézierManual.vb program, 629-30
BézierSpline method, 630
Bézier.vb program, 614-16
BigEndianUnicode property, 1190-92
bilevel (monochrome) images, 472
Bilinear warp, 712
binary file I/O, 1197-1200
binary resources, 517-21
binary-coded decimal (BCD) type, 1219
BinaryReader class, 1197
BinarySearch method, 1254-55
BinaryWriter class, 1168, 1197
Bitmap class, 471, 472, 510-13, 1071, 1097
bitmap (raster) fonts, 351, 352
Bitmap object, 471, 477, 510-13, 720, 1106, 1107, 1108, 1109, 1144, 1145, 1147, 1148, 1151, 1152, 1153, 1159
bitmap (Bmp) property, 474, 475
BitmapButtons.vb program, 550-52
bitmaps. See also images; raster graphics
buttons with, 549-52
clipping, 717-21
converting metafiles to, 1106-8
defined, 469
file formats, 472-76
Hello World with a bitmap, 513-14
introduced, 469-70
shadow, 514-17
support overview, 471-72
bits per pixel (bpp), 472-73
Blend property, 809
BlockFont.vb program, 917-18
BlockOut.vb program, 312-15
Bmp (bitmap) property, 474, 475
Bold property, 371
BoldAndItalicBigger.vb program, 364
BoldAndItalicTighter.vb program, 401-3
BoldAndItalic.vb program, 358-59
Boolean type, 13, 40
BorderStyle enumeration, 531-32, 577
BorderStyle property, 333, 531, 577, 840, 960-61, 974, 975, 1052
Bottom property, 95, 98, 1004
Bounce.vb program, 525-27
BouncingGradientBrushBall.vb program, 813-14
boundary rectangle, 116-19
Bounds property, 98, 333, 675, 676, 681, 1003, 1004, 1005, 1015, 1101, 1102
BoxingTheClient.vb program, 178
bpp (bits per pixel), 472-73
Break property, 654-55
Bricks.vb program, 911-13
BringToFront method, 569, 1041
browser keys, 218
Brush class, 67, 781, 782
Brush object, 67, 107-8, 782
brush programs. See also pen programs
BlockFont.vb, 917-18
BouncingGradientBrushBall.vb, 813-14
Bricks.vb, 911-13
DropShadow.vb, 914-15
EmbossedText.vb, 915-17
GradientText.vb, 913-14
HatchBrushArray.vb, 785-86
HatchBrushMenu.vb, 786-89
HatchBrushRenderingOrigin.vb, 794-95
HexagonGradientBrush.vb, 821-22
OverlappingHatchBrushes.vb, 792-94
RectangleLinearGradientBrush.vb, 805-6
SquareTile.vb, 818-19
StarGradientBrush.vb, 812-13
TextureBrushDemo.vb, 796-800
TriangleGradientBrush.vb, 810-12
TriangleTile.vb, 815-18
TwoPointLinearGradientBrush.vb, 802-3
TwoTriangleTile.vb, 819-21
Brush property, 825, 826
brushes. See also pens
Brushes.Black, 68, 170
gradient, 913-14
hatch, 782-92, 911-13
rendering origin, 792-95
introduced, 67-68, 107-8, 781-82
linear gradient, 800-809
path gradient, 810-14
tiling, 814-22
solid, 782, 914-18
for text, 911-18
texture, 795-800
Brushes class, 67, 782
Brushes.Black, 68, 170
BufferedStream class, 1187, 1188
Button class, 536, 537, 572, 731, 733, 734
Button control, 1042, 1071
Anchor property, 557-61, 562, 564
appearance and alignment, 546-49
with bitmaps, 549-52
Dock property, 557-58, 561-64
handlers, 552
hexadecimal calculator, 587-92
introduced, 536-40
keyboard input and, 540-41
mouse input and, 540-41
owner-draw, 552-57
sizing, 542-46, 583
Button object, 537, 542, 545, 565, 748, 1135, 1145
button programs
BitmapButtons.vb, 550-52
ButtonStyles.vb, 548-49
HexCalc.vb, 587-92
OwnerDrawButtons.vb, 554-57
SimpleButton.vb, 537-40
TwoButtonsAnchor.vb, 558-60
TwoButtonsDock.vb, 562-64
TwoButtons.vb, 543-46
Button property, 302, 303, 978
ButtonApplyOnClick method, 749
ButtonBase class, 536, 547-48, 549-50, 576
ButtonClick event, 978, 981, 983, 986
ButtonDropDown event, 978, 984
ButtonOnClick method, 539, 540, 545, 546, 586, 592
ButtonOnPaint method, 556, 557
Buttons property, 971, 974
ButtonState enumeration, 553
ButtonStyles.vb program, 548-49
by prefix, 40
ByRef keyword, 15
Byte type, 11, 13, 40
ByVal keyword, 15
C
CalcButton class, 588
calculator program (HexCalc.vb), 587-92
Calendar object, 439-41
CalendarDate class, 20, 21, 22, 23, 26, 34, 35, 36
CalendarDate object, 23, 25
CalendarDate structure, 16, 17, 18, 19
calendars, 439-41
camel casing, 40
cancel button, 545
Cancel property, 237, 1008, 1009, 1061
CancelButton property, 733-34, 738, 741
CancelEventArgs class, 1008
CanDuplex property, 1000
CanFocus property, 237
canonical splines
introduced, 630-38
mathematical derivation, 638-40
CanonicalSegment method, 640
CanonicalSpline method, 640
CanonicalSplineManual.vb program, 639-40
CanonicalSpline.vb program, 631-34
CanRead property, 1182
CanSeek property, 1182
CanUndo property, 852, 861
CanWrite property, 1182
Capacity property, 347
caps (ends), 829-36
caption (title) bar, 51
CaptionHeight property, 103-4
Capture property, 312, 319, 556-57
CaptureLoss.vb program, 318-19
capturing the mouse, 301, 309, 311-12
caret, 238-42
Caret class, 238, 241, 242
Caret object, 245
Caret.vb program, 238-41
Cartesian coordinates, 68-69
Catch blocks, 24-25, 386-87
Ceiling method, 92, 94, 1225-26
CenterColor property, 811
CenterImage.vb program, 489-90
centering text, 116-20
CenterPixelSizeImage.vb program, 490-91
CenterPoint property, 811, 814
ch prefix, 40
Changed event, 753, 754, 901
ChangeExtension method, 1203-4
Char type, 13, 40, 1235-37
character keys, 208
CharacterCasing enumeration, 875
CharacterCasing property, 875
Chars property, 1234, 1238
Check property, 668
CheckAlign property, 572, 593
CheckAndRadioCheck.vb program, 656-59
CheckBox class, 572
CheckBox control, 569-73, 579, 595, 655, 733
three-state alternative, 573-74
CheckBox object, 744
CheckBoxDemo.vb program, 570-72
CheckBoxOnCheckedChanged method, 574, 575, 578, 581, 595
CheckBoxWithLabel.vb program, 575-76
Checked property, 569-70, 571-72, 573, 581, 592-93, 656, 658, 744, 1062
CheckedChanged event, 569-70, 571, 574, 593
CheckedListBox class, 885
Checker class, 336
CheckerChild class, 457
CheckerChild.vb program, 338-39
CheckerChildWithFocus.vb program, 341-42
Checker.vb program, 334-36
CheckerWithChildrenAndFocus.vb program, 342-43
CheckerWithChildren.vb program, 339-41
CheckerWithKeyboard class, 336
CheckerWithKeyboard.vb program, 336-38
CheckFileExists property, 771, 772
CheckPathExists property, 771
CheckState enumeration, 573-74
CheckState property, 573
CheckStateChanged event, 574
child index, 1041
child menus (submenus), 642
child windows. See controls
children of controls, 301
Chr function, 1235
ChrW function, 1235
CInt function, 1226
circles
drawn with Bézier splines, 621-24
parametric equations, 182
classes. See also inside front cover
AboutBox, 740
AboutDialogBox, 740
AdjustableArrowCap, 836
Application, 55
ArrayList, 346-47, 700
BézierClockControl, 617, 618
BézierManual, 629
BinaryReader, 1197
BinaryWriter, 1168, 1197
Bitmap, 471, 472, 510-13, 1071, 1097
Brush, 67, 781, 782
Brushes, 67, 782
BufferedStream, 1187, 1188
Button, 536, 537, 572, 731, 733, 734
ButtonBase, 536, 547-48, 549-50, 576
CalcButton, 588
CalendarDate, 20, 21, 22, 23, 26, 34, 35, 36
CancelEventArgs, 1008
Caret, 238, 241, 242
CheckBox, 572
CheckedListBox, 885
Checker, 336
CheckerChild, 457
CheckerWithKeyboard, 336
Clipboard, 1134-36
ClockControl, 457, 459
Clover, 714
Color, 105
ColorDialog, 755, 756-63, 871
ColorFillDialogBoxWithApply, 747
ColorPalette, 486
ColorScrollDialogBox, 753, 754
ComboBox, 884-85
CommonDialog, 755
Console, 7, 9, 43, 60
ContainerControl, 52, 53, 341, 541
ContextMenu, 661
Control. See Control class
ControlCollection, 564, 565, 566, 568
ControlPaint, 369, 553, 677
Cursor, 325-26, 327, 331
Cursors, 326
CustomLineCap, 836
DataFormats, 1149-52, 1155, 1159
DataGridTextBox, 838
DataObject, 1165, 1166, 1168, 1169
DateTime, 861, 1256
DateTimeFormatInfo, 443
DaylightTime, 436
defined, 19
Directory, 1204-12
DirectoryInfo, 1204-12
DirectoryTree, 1065-70
DirectoryTreeView, 1065, 1067-68, 1070, 1078
DomainUpDown, 897-98
DoPage, 260, 261
DrawOrFillEllipse, 746
DropDownList, 1011
EnhancedDate, 34, 36, 37
Environment, 50, 1200-1202
EventArgs, 1008
Exception, 24
File, 1204-5, 1212-15
FileDialog, 755
OpenFileDialog class, 755, 768-76
SaveFileDialog class, 755, 776-79
FileInfo, 1204-5, 1212-15
FileListView, 1088, 1091, 1093
FileStream
introduced, 1179-81
problem with, 1186-87
properties and methods, 1182-86
FileSystemInfo, 1207
FindDialog, 861, 866
Font, 66, 67, 129, 355, 357, 369, 372, 397
FontCollection, 391
FontDialog, 372, 755, 756-63, 871
FontFamily, 381, 391
FontMenuForm, 910, 911
Form, 52, 53, 58, 74, 75, 76, 128, 129, 206-7, 728, 731, 741
Graphics. See Graphics class
GraphicsContainer, 268
GraphicsPath, 688, 689, 691, 694, 702, 708, 930, 931, 941, 944
GraphicsPathIterator, 698
GraphicsState, 267-68
HatchBrush, 781, 782, 783, 908
HatchStyleMenuItem, 788
HelloWorld, 80, 81, 82
HScrollBar, 596
Icon, 519
Image, 471, 472, 474, 477, 482, 483, 484, 485, 486, 507-10, 778, 1096, 1097, 1098, 1099, 1119
ImageCollection, 529
ImageFormat, 474, 486, 487, 778
ImageIO, 777
ImageList, 528-31, 565
ImageListCollection, 530
ImagePanel, 1071, 1074-75
InheritAndConstruct, 76
InheritHelloWorld, 80, 81, 82
InheritTheForm, 75
InstalledFontCollection, 391
instances of, 21
introduced, 38
KeyEventArgs, 646
KeyExamine, 232
LinearGradientBrush, 781, 782
ListBox, 884-85
ListControl, 884-85
MarshalByRefObject, 76
Math, 181, 624. See also Math class
Matrix, 286-89, 702, 703, 904, 923
MemoryStream, 1187, 1188
Menu, 565, 642-43, 663, 664
MenuItem, 644, 655, 666, 788, 859, 963-64, 967, 969, 990
MenuItemCollection, 663-69
MenuItemColor, 661, 666, 990
MenuItemEncoding, 859
MenuItemHelp, 967, 969
MenuItems, 529
MessageBox, 45-51
Metafile, 471, 1071, 1097, 1098, 1099, 1123, 1124
MetafileHeader, 1099, 1119
MouseConnect, 327
MouseEventArgs, 302
MustInherit, 439, 471, 477, 478, 536, 596, 755, 768, 782, 861, 1187, 1188
NonInheritable, 162, 486, 768, 1097, 1134, 1204
NotepadCloneWithFile, 850
NumericUpDown, 897-98
Object, 36, 37, 52
ObjectCollection, 885, 892
objects as instances of, 21
OpenFileDialog, 755, 768-76
PageSettings, 993, 1002-5, 1015
PageSetupDialog, 1027-31
PaintEventArgs, 62-63, 64, 69, 153, 154, 162
Path, 1203
PathData, 692
PathGradientBrush, 781, 782, 810, 811
Pen, 107, 781, 782
Pens, 163
PictureBox, 531-34
PictureBoxPlus, 1075
PreviewPageInfo, 1032
PreviewPrintController, 1019-20
PrintableForm, 178, 258, 361, 479, 909-10
PrintController, 1018-22
PrintControllerWithStatusDialog, 1019, 1020
PrintDialogBox, 1023-27
PrintDocument, 1006-8, 1018-20, 1022
PrinterSettings, 163, 993, 994-1002
PrintEventArgs, 1008
PrintPageEventArgs, 169, 1008
PrivateFontCollection, 391, 392
ProgramWithIcon, 518, 520, 521
QueryPageSettingsEventArgs, 1008, 1014
RadioButton, 592, 593
Registry, 764
RegistryKey, 764
ReplaceDialog, 861, 866
RichTextBox, 838, 876
SampleClass, 1199-1200
ScrollableControl, 53, 145-46, 596
ScrollBar, 596-97
SelectedIndexCollection, 888
SelectedObjectCollection, 888
SevenSegmentDisplay, 452, 454
SimpleButton, 539, 540
SimpleControl, 540
SimpleDialog, 728
SimpleDialogBox, 728
SolidBrush, 781, 782
Splitter, 1040, 1051
StandardPrintController, 1019, 1020, 1021
StatusBar, 951, 958
StatusBarPanel, 951, 959
Stream, 477, 1187, 1188
StreamReader, 1188, 1189
StreamWriter, 1188, 1189, 1257
String, 1233, 1239
StringBuilder, 884, 1255-58
StringCollection, 995
StringFormat, 403, 412, 417-18
StringReader, 1188
StringWriter, 1188, 1257
StructLayoutAttribute, 232
structures vs., 86-87
SuperString, 7-8
SysInfoList, 144
SysInfoReflection, 223
SysInfoReflectionStrings, 1083-84
SysInfoStrings, 137, 153, 155-60
SystemBrushes, 111
SystemColors, 109-10
SystemEvents, 151, 513
SystemInformation, 127-28, 155, 1084
System.IO, 15, 1188
SystemPens, 110, 164
TenCentimeterRuler, 258
TextBox, 837-38
TextBoxBase, 837-38, 852, 860, 1133
TextReader, 1188
TextureBrush, 781, 782, 795, 799, 800, 908
TextWriter, 1188, 1257
Thread, 54, 1022
Timer, 425, 426-29
TimeZone, 434
ToolBar, 951
ToolBarButton, 951, 978
ToolBarButtonCollection, 971
ToolTip, 876, 877
TrackBar, 605
TreeNode, 1055-59, 1060
TreeNodeCollection, 1055, 1056, 1057, 1060
TreeView, 1055, 1056
Type, 884
TypeAway, 245
UpDownBase, 897
UserControl, 338, 459
VScrollBar, 596
WebRequest, 481
WebResponse, 481
Wink, 523
Clear method, 64-65, 106, 107, 113-14, 530, 566, 567, 665, 842, 860
ClearMarkers method, 697
ClearSelected method, 888
ClearType fonts, 352, 395, 396
ClearUndo method, 852
Click event
clipboard programs, 1139, 1142
control programs, 536, 538, 539, 545, 570, 585, 593
dialog box programs, 728, 729, 731, 733, 749, 757
menu programs, 645, 647, 649, 650, 655, 658, 670, 671
mouse programs, 322, 323, 341
status bar and toolbar programs, 963, 964, 990
ClickedControl property, 1075
ClickedImage property, 1075
clicks, 298, 322-23
Clicks property, 302, 303
client area, 51, 69, 99-103, 149-53, 268-72
client area coordinates, 103
client area programs
WhatSizeTransform.vb, 271-72
WhatSize.vb, 269-70
ClientEllipse.vb program, 189-90
ClientRectangle property, 99, 103, 186-87
ClientSize property, 99-100, 149, 166, 169, 267, 268, 532, 538
Clip property, 174, 326-27, 722
clipboard
Clipboard class, 1134-36
data formats, 1145-55
drag-and-drop facility, 1169-77
getting objects from, 1136-45
introduced, 1133
items and formats, 1134
setting multiple formats, 1164-69
Clipboard class, 1134-36
clipboard programs
ClipText.vb, 1137-40
ClipViewAll.vb, 1159-63
ClipView.vb, 1155-59
ImageClip.vb, 1142-45
ImageDrop.vb, 1175-77
MetafileClip.vb, 1140-42
MultiCopy.vb, 1166-69
NotepadClone.vb, 1172-74
RichTextPaste.vb, 1153-55
clipboard viewers, 1155-64
ClipBounds property, 722, 723
clipped controls, 538
clipping. See also path and clipping programs; paths
bitmaps, 717-21
defined, 685
with paths, 712-17
regions and, 685, 721-23
clipping region, 153-55
clipping text, 410-12
ClippingCombinations.vb program, 715-16
ClipRectangle property, 63, 64, 153-54
ClipText.vb program, 942-44, 1137-40
ClipViewAll.vb program, 1159-63
ClipView.vb program, 1155-59
clock programs
AnalogClock.vb, 461-62
BézierClockControl.vb, 617-18
BézierClock.vb, 618-19
ClockControl.vb, 457-60
DateAndTimeStatus.vb, 962-63
DigitalClock.vb, 449-50
DigitalClockWithDate.vb, 450-52
SevenSegmentClock.vb, 455-56
SevenSegmentDisplay.vb, 452-55
SimpleClock.vb, 447-48
ClockControl class, 457, 459
ClockControl object, 461
ClockControl.vb program, 457-60
clocks
analog, 457-62
seven-segment LCD, 452-56
simple culture-specific, 447-52
Clone method, 510, 511, 707, 1240
CLong function, 1226
Close method, 306, 650, 764-65, 1183, 1193, 1195, 1198, 1199
CloseAllFigures method, 695
closed subpaths, 691
ClosedCurveFillModes.vb program, 636-38
CloseFigure method, 691, 695
CloseInFive.vb program, 428-29
Clover class, 714
Clover.vb program, 713-14
code, managed, 6
coding controls, 541-42
Collapse method, 1064
CollapseAll method, 1064
Collate property, 1000
Collection, 347, 349
Colon method, 454
Color class, 105
Color object, 106, 107, 163, 579, 603, 659, 661, 666, 744, 761
Color property, 663, 742, 744, 750, 751, 757, 759, 782, 825, 826, 990, 1003, 1005
Color structure, 59, 65, 104-6
Color.Black, 170
ColorDepth enumeration, 528-29
ColorDepth property, 528, 529
ColorDialog class, 755, 756-63, 871
ColorDialog object, 761, 762
ColorFillDialogBox object, 746, 747
ColorFillDialogBox.vb program, 742-45
ColorFillDialogBoxWithApply class, 747
ColorFillDialogBoxWithApply object, 750
ColorFillDialogBoxWithApply.vb program, 747-49
ColorFillDialogOnApply event, 750
ColorPalette class, 486
ColorPalette object, 486
ColorPalette property, 486
colors
defined, 105
depth, 472-73
known, 112
list, inside back cover
repainting, 113-16
system, 108-11, 112-13
user-preference, 109
ColorScrollDialogBox class, 753, 754
ColorScrollDialogBox.vb program, 751-53
ColorScroll.vb program, 600-604
ColorTrackBar.vb program, 607-9
Column property, 1087
ColumnClick event, 1087
Columns property, 1079, 1080, 1085
Combine method, 1203-4
CombineMode enumeration, 715
ComboBox class, 884-85
ComboBox control, 891-97
ComboBoxStyle enumeration, 891-92
command buttons. See Button control
command line. See console
common dialog boxes
ColorDialog, 755, 756-63
FontDialog, 755, 756-63
introduced, 26, 726, 755
OpenFileDialog, 755, 768-76
SaveFileDialog class, 755, 776-79
CommonDialog class, 755
Compare method, 871, 1246-47, 1254
CompareOrdinal method, 1246
CompareTo method, 1246, 1253-54
comparing strings, 1243-47
compiler (vbc.exe), 3
compiler switches
reference (r), 45
target (t), 43-44
ComposeLine function, 768
ComposeLine method, 1159, 1186
compression techniques for images, 473-74
Concat method, 1242-43
concatenating strings, 10, 1241-43
console, 1-6
console applications vs. Windows applications, 43-44
Console class, 7, 9, 43, 60
console programs
AddingConstructors.vb, 32-34
AddingMethods.vb, 18-19
ConsoleAdder.vb, 9-10
ConsoleHelloWithImports.vb, 8
ConsoleHelloWorld.vb, 6-7
ConsolidatingData.vb, 17-18
DefiningTheClass.vb, 19-21
FirstBasicProgram.vb, 2-3, 5
InheritingTheClass.vb, 34-36
MinAndMax.vb, 12-13
PropertiesAndExceptions.vb, 28-30
SharingMethods.vb, 21-23
ConsoleAdder.vb program, 9-10
ConsoleHelloWithImports.vb program, 8
ConsoleHelloWorld.vb program, 6-7
ConsolidatingData.vb program, 17-18
Const fields, 181
constructors
BinaryReader, 1197
BinaryWriter, 1197
Bitmap, 511-12, 518, 521
CalendarDate, 31-32
ContextMenu, 643
Cursor, 518, 521
DataObject, 1165
DateTime, 430, 437, 439-41
Decimal, 1220
defined, 31
DirectoryInfo, 1206
FileInfo, 1212
FileStream, 1180, 1181
Font, 357, 359-60, 364-65, 367, 374, 376, 378, 386, 668, 931
FontFamily, 378-79, 392
GraphicsPath, 694
HatchBrush, 783
HexCalc, 588
Icon, 518, 519-21
introduced, 31-34
LinearGradientBrush, 802, 804, 806-7
ListViewItem, 1082
ListViewItem.ListViewSubItem, 1083
MainMenu, 643, 650
Margins, 1004
Matrix, 286-87, 937, 945
MenuItem, 644, 650, 653, 669, 671
Metafile, 1108-9, 1116, 1118-19, 1123, 1125
NotepadCloneWithRegistry, 850
PageSettings, 1002-3
PageSetupDialog, 1027
PathGradientBrush, 810
Pen, 164, 823
Point, 91, 93
PointF, 93
PrintDialog, 1023
PrintDocument, 1006
PrinterSettings, 994
Rectangle, 93-94
RectangleF, 94
Region, 721
Size, 91, 93
SizeF, 93
SolidBrush, 782
StreamReader, 1194
StreamWriter, 1189-90
String, 1237-38
StringFormat, 398, 415-16
SysInfoPanel, 142-43
TextureBrush, 796
TimeSpan, 437
TreeNode, 1060
container of controls, 540
ContainerControl class, 52, 53, 341, 541
Contains method, 97, 567, 665, 885
ContainsFocus property, 237
ContentAlignment enumeration, 547
context (shortcut) menus, 299, 642, 659-63
ContextMenu class, 661
ContextMenu object, 661, 665, 666
ContextMenu property, 644, 661, 666
ContextMenuAdd.vb program, 665-66
ContextMenuDemo.vb program, 659-61
control characters, 225-26
Control class, 112-13, 139, 231, 300-301, 312, 317-18, 323, 326, 338, 538, 564, 566, 579, 584, 596, 951, 954, 959, 1040, 1041
Control object, 206, 565
control points, 612, 616
control programs. See also Notepad clone
AutoScaleDemo.vb, 585-87
BitmapButtons.vb, 550-52
ButtonStyles.vb, 548-49
CheckBoxDemo.vb, 570-72
CheckBoxWithLabel.vb, 575-76
ColorScroll.vb, 600-604
ColorTrackBar.vb, 607-9
CustomCheckBox.vb, 579-81
EnumerateEnumerationCombo.vb, 893-97
EnumerateEnumeration.vb, 879-84
EnvironmentBars.vb, 889-90
HexCalc.vb, 587-92
MatrixElements.vb, 902-4
MatrixMethods.vb, 904-8
OwnerDrawButtons.vb, 554-57
RadioButtons.vb, 593-95
SimpleButton.vb, 537-40
TextBoxDemo.vb, 839-40
Transform.vb, 899-901
TwoButtonsAnchor.vb, 558-60
TwoButtonsDock.vb, 562-64
TwoButtons.vb, 543-46
Control properties, 98, 99
Control property, 109, 110, 111, 210, 241
ControlCollection class, 564, 565, 566, 568
ControlDark property, 109, 110, 111
ControlDarkDark property, 109, 110, 111
ControlLight property, 109, 110, 111
ControlLightLight property, 109, 110, 111
ControlPaint class, 369, 553, 677
controls
auto-scale option
AuoScaleBaseSize property, 584-85, 587
introduced, 581-83
Scale method, 584-87
Windows Forms Designer and, 583-84
Button. See Button control
CheckBox, 569-73, 579, 595, 655, 733
three-state alternative, 573-74
children of, 301
as children on forms, 564-67
clipped, 538
coding, 541-42
ComboBox, 891-97
container of, 540
defined, 53
DialogBox. See dialog boxes
edit. See TextBox control
GroupBox, 592-95
HScrollBar, 140, 596
identifying, 578-81
introduced, 535-36
Label, 331-33, 574-77, 578, 603, 740-41
LinkLabel, 741
ListBox, 884-91
ListView. See ListView control
NumericUpDown, 897-908
owner draw feature, 163
Panel, 331, 600, 952, 955-57, 974, 986, 991, 1042, 1043, 1068, 1071
scrolling, 141-45
parents of, 301
PictureBox, 531-34, 740, 741
RadioButton, 592-95
ResizeRedraw, 459
RichTextBox, 238, 394, 838, 876
ScrollBar, 140, 596-604
splitter
examples, 1044-55
introduced, 1039-44
StatusBar. See status bars
tab order, 577-78
target, 1040, 1044
TextBox. See TextBox control
ToolBar. See toolbars
TrackBar, 604-9
TreeView. See TreeView control
up-down, 897-908
VScrollBar, 140, 596
z-order, 567-69
Controls property, 564, 565, 568, 571-72, 578, 744
ControlText property, 109, 110, 111
Convert method, 1018
converting strings, 1241
convex hull, 616
coordinate points, 68-70, 87-89
Coordinated Universal Time (UTC), 433
coordinates
arbitrary, 272-75
arrays of points, 89-90
Cartesian, 68-69
client area, 103
coordinate points, 87-89
current position, 173, 177
default, 69
desktop, 103
device, 266
dialog box, 584
form, 103
manual conversions, 256-58
page, 266
point conversions, 103-4
screen, 103
world, 164, 281-82
CoordinateSpace enumeration, 270-71
Copies property, 1000
Copy method, 860, 1214, 1240
copying strings, 1239-41
CopyTo method, 1214, 1240
Cos method, 949-50, 1230
Cosh method, 1231
Count property, 137, 347, 530, 565, 567, 664, 892, 995, 997, 1055, 1080, 1081, 1082, 1088
Courier fonts, 353
Create method, 1207, 1214, 1215
CreateBitmapButton method, 990
CreateChildren method, 342
CreateDirectory method, 1207
CreateGraphics method, 71, 139, 162, 346, 460, 539, 1109
CreateMeasurementGraphics method, 163, 1002
CreateMetafileMemory.vb program, 1114-15
CreateMetafileReload.vb program, 1112-14
CreateMetafile.vb program, 1110-12
CreatePrompt property, 776
CreateSampleFont method, 389
CreateSubdirectory method, 1207
CreateSubKey method, 764-65, 767
CreateText method, 1214, 1215
CreationTime property, 1208, 1213
Cross property, 326
culture-invariant formats, 442
culture-specific formats, 442
current position, 173, 177
Current property, 326-27, 330, 331
CurrentDirectory property, 1202
CurrentEncoding property, 1194-95
CurrentInfo property, 443-44
CurrentTimeZone property, 434
CurrentUser key, 764
cursor
defined, 238
movement, keypad, 214
Cursor class, 325-26, 327, 331
Cursor object, 333
Cursor property, 60, 331, 333, 344
Cursors class, 326
curves and parametric equations, 182-85
CustomCheckBox.vb program, 579-81
CustomColors property, 761
CustomEndCap property, 836
CustomLineCap class, 836
CustomStartCap property, 836
Cut method, 860
cx prefix, 40
cy prefix, 40
D
d prefix, 40
DashCap enumeration, 832
DashCap property, 830, 832, 833-34
DashedEllipse.vb program, 191
DashOffset property, 826, 828, 829
DashPattern property, 826, 829
DashStyle enumeration, 826-27, 828-29
DashStyle property, 826, 936
Data property, 1171
data types, 11-15, 39, 40, 1217-18, 1219-22
DataFormats class, 1149-52, 1155, 1159
DataGridTextBox class, 838
DataObject class, 1165, 1166, 1168, 1169
Date property, 431
DateAdd function, 439
DateAndTimeStatus.vb program, 962-63
DatePlus object, 36
dates. See also clocks
calendars, 439-41
DateTime structure, 430-32, 434
local time and universal time, 432-36
readable renditions, 441-47
tick count, 436-39
DateSerial function, 432
DateTime class, 861, 1256
DateTime object, 436, 437-47, 441, 442, 456
DateTime property, 460
DateTime structure, 430-32, 434
DateTimeFormatInfo class, 443
Day property, 431
DaylightName property, 435
DaylightTime class, 436
DayOfWeek property, 431
DayOfYear function, 16-17, 18, 19
DayOfYear method, 19, 20, 22, 23, 25, 26
DayOfYear property, 30, 431
Days property, 438
DaysSince1600 property, 36
Deactivate event, 207
dead keys, 234-35
Decimal type, 12, 40, 1217-18, 1219-22
DecimalPlaces property, 898
default button, 545
default printer, 994
Default property, 326, 1190-92
DefaultFont property, 356
DefaultItem property, 654
DefaultPageSettings property, 1001, 1002, 1003, 1006-7, 1013
DefiningTheClass.vb program, 19-21
delegates, 61
Delete method, 1207-8, 1214
Delta property, 302, 303, 436
depth of colors, 472-73
Descartes, René, 68-69
descenders of fonts, 382
Descent metric, 381-82, 383
desktop coordinates, 103
Desktop property, 109, 111
DesktopBounds property, 99, 846-47, 850
DesktopLocation property, 99, 103
detents, 300
device coordinates, 266
device drivers, 994
device independence through text, 249-50
device-independent bitmap (DIB), 475
DEVMODE structure, 1002
DEVNAMES structure, 1002
dialog box coordinates, 584
dialog box programs
AboutBox.vb, 738-41
BetterDialog.vb, 736-38
BetterFontAndColorDialogs.vb, 762-63
ColorFillDialogBox.vb, 742-45
ColorFillDialogBoxWithApply.vb, 747-49
ColorScrollDialogBox.vb, 751-53
DialogsWithRegistry.vb, 766-68
DrawOrFillEllipse.vb, 745-47
DrawOrFillEllipseWithApply.vb, 749-50
FontAndColorDialogs.vb, 756-58
HeadDump.vb, 769-71
ImageIO.vb, 777-79
ImageOpen.vb, 774-76
ModelessColorScroll.vb, 754
SimpleDialog.vb, 726-30
SimplerDialog.vb, 733
dialog box templates, 584
dialog boxes
about box, 738-41
accept and cancel, 733-34
Apply button, 747-50
common
ColorDialog, 755, 756-63
FontDialog, 755, 756-63
introduced, 26, 726, 755
OpenFileDialog, 755, 768-76
SaveFileDialog class, 755, 776-79
defining properties, 742-47
introduced, 725-26
modal
first, 726-30
introduced, 725
termination, 731-33
modeless, 725, 751-54
screen location, 734-38
system modal, 725
Windows registry and, 763-68
DialogResult enumeration, 49-50, 729
DialogResult property, 729, 730, 731, 733, 734, 741, 749
DialogsWithRegistry.vb program, 766-68
DIB (device-independent bitmap), 475
DigitalClock.vb program, 449-50
DigitalClockWithDate.vb program, 450-52
Dim keyword, 20
dimensions, metrical, 268-72
DirectCast keyword, 67
directories, working with, 1206-12
DirectoriesAndFiles.vb program, 1068-70
Directory class, 1204-12
Directory property, 1213
DirectoryInfo class, 1204-12
DirectoryInfo object, 1067, 1091
DirectoryName property, 1213
DirectoryTree class, 1065-70
DirectoryTreeView class, 1065, 1067-68, 1070, 1078
DirectoryTreeViewOnAfterSelect event, 1078, 1093
DirectoryTreeView.vb program, 1065-67
dirty bits, 851
disassembler (ildasm.exe), 5
displaying text, 66
DisplayKeyInfo method, 230
DisplayRectangle property, 103
DisplaySettingsChanged event, 151, 513
Dispose method, 139, 162, 241-42, 502, 1110
DivideByZeroException exception, 1219, 1223
Divider property, 974, 975, 976
Dock property, 461, 534, 557-58, 561-64, 953, 955, 1040-43, 1045-46, 1047, 1051, 1085
DockStyle enumeration, 561, 1040-43
Document property, 1023, 1028, 1033
DocumentName property, 167-68, 1006, 1007, 1013-14, 1031, 1033
documents, defining, 1006-8
DoDragDrop method, 1174, 1177
DoIt method, 270, 272
DomainUpDown class, 897-98
DoPage class, 260, 261
DoPage method
brush and pen programs, 799, 800
font and text programs, 375, 389, 909, 911, 918, 919, 942
image and bitmap programs, 490, 491, 505, 509
metafile programs, 1110, 1112, 1113, 1115
page-related programs, 262, 272, 274, 292-93
path and clipping programs, 689, 690-91, 699, 707, 714, 717, 721
spline programs, 624
vector graphics programs, 173, 195
dots per inch, 253-54
DotsPerInch.vb program, 254
double clicks, 298, 322-23
Double type, 12, 40, 1217-18, 1222-24
DoubleClick event, 322, 323
DoubleClickSize property, 298
DoubleClickTime property, 298
DpiX property, 253, 255, 256, 266, 367, 489, 503, 511, 1009, 1101-2, 1119
DpiY property, 253, 255, 256, 266, 360, 367, 489, 503, 511, 1009, 1101-2, 1119
DragAction enumeration, 1175
drag-and-drop facility, 1169-77
DragDrop event, 1170-72, 1174, 1177
DragDropEffects enumeration, 1172, 1174
DragEnter event, 1170-72
DragFullWindows property, 150-51
dragging, 298
DragLeave event, 1170-72
DragOver event, 1170-72, 1174, 1177
Draw method, 530-31
draw programs, 470
DrawArc method, 190-91, 193, 1111
DrawBackground method, 677, 681
DrawBall method, 813, 814
DrawBézier method, 613
DrawBéziers method, 613-14, 617, 618, 630, 685, 688
DrawButton method, 553, 556
DrawClosedCurve method, 635-36, 692
DrawCurve method, 630-31, 635, 640
DrawDots method, 460
DrawEllipse method, 184, 189-90, 198, 624, 1111
DrawFocusRectangle method, 553, 557, 677
DrawHourHand method, 460, 617
DrawHouse.vb program, 179
DrawIcon method, 520, 741
DrawIconUnstretched method, 520
DrawImage function, 483
DrawImage method
clipboard programs, 1159
dialog box programs, 776
image and bitmap programs, 471, 478, 479, 487-89, 490, 491, 494, 495-96, 497-98, 499, 501, 514, 515, 516, 523
metafile programs, 1097, 1099, 1102, 1106, 1111, 1112
path and clipping programs, 721
tree view and list view programs, 1071
DrawImageUnscaled method, 487
DrawItem event, 675, 682, 891, 960, 990, 991
DrawItemEventArgs object, 163, 681
DrawItemState enumeration, 676
DrawLargeButton method, 557
DrawLine method, 165, 166, 173, 193, 230, 259, 460, 516, 687, 689, 690, 828
DrawLines method, 178, 179-80, 193, 346, 349, 631, 685, 687, 688, 828, 830, 1123
DrawMenuGlyph enumeration, 677
DrawMenuGlyph method, 677, 678, 681
DrawMinuteHand method, 460, 617
DrawMode enumeration, 890-91
DrawMode property, 890-91
DrawOnImage.vb program, 504-5
DrawOnPixelSizeImage.vb program, 505-7
DrawOrFillEllipse class, 746
DrawOrFillEllipse.vb program, 745-47
DrawOrFillEllipseWithApply.vb program, 749-50
DrawPath method, 690-91, 698, 699, 701, 708, 931, 934, 938, 942
DrawPie method, 193-96
DrawPolygon method, 188, 262, 460, 636, 692
DrawRectangle method, 185-87, 193, 262
DrawRectangles method, 187
DrawSecondHand method, 460
DrawSmallerButton method, 557
DrawString method
clock, timer, and time programs, 451, 454
dialog box programs, 741
font and text programs, 356, 359, 361, 369, 370, 377, 386, 392-94, 396, 397, 398, 401, 403-4, 405, 406, 407, 409, 412, 415, 416, 417, 421, 423, 920, 921, 927, 931, 932, 934, 938
form-related programs, 66, 67, 68, 70, 73, 102, 108, 113, 116-20, 122-25
image and bitmap programs, 504, 505, 507
keyboard programs, 245-46, 247
menu programs, 681
metafile programs, 1096
page-related programs, 270, 277-78
path and clipping programs, 697
printing programs, 1038
system information programs, 128, 131, 133, 148-49, 153
vector graphics programs, 171, 173
DrawStringDisabled method, 369
DrawText method, 1159
drop-down menus, 642
DropDownArrows property, 987
DropDownList class, 1011
DropDownMenu property, 983, 987, 988, 990
DropDownMenuButton.vb program, 988-91
DropDownStyle property, 891
DroppedDown property, 891, 892
DropShadow.vb program, 914-15
DropShadowWithPath.vb program, 938-39
DualWink.vb program, 523-25
Duplex enumeration, 1000-1001
Duplex property, 1000
E
E constant, 1224
echoing key characters, 242-46
edit control. See TextBox control
Effect property, 1171, 1172, 1174
Elements property, 287
ellipse programs
ArbitraryCoordinates.vb, 273-75
DrawOrFillEllipse.vb, 745-47
DrawOrFillEllipseWithApply.vb, 749-50
OnePanelWithSplitter.vb, 1044-45
RadioButtons.vb, 593-95
SplitThreeAcross.vb, 1047-49
SplitThreeFrames.vb, 1049-51
SplitTwoProportional.vb, 1053-55
TryOneInchEllipse.vb, 255-56
TwoPanelsWithSplitter.vb, 1045-47
ellipses
drawing, 188-90
filled, 198
parametric equations, 182-84
em dash, 125
Em height metric, 381-82, 383
em size (height, point size) of fonts, 352, 354-55, 364-69, 381-82, 383
EmbossedText.vb program, 915-17
Emf (enhanced metafile format) property, 474, 476
EmfPlusHeaderSize property, 1100
EmfPlusRecordType enumeration, 884, 1122-23
EmfType enumeration, 1124
EM_LINEINDEX message, 861
Empty field, 88
Empty property, 530
EMR structure, 1131
Enabled property, 301, 427, 459, 463, 541, 654, 748, 982
Encoding property, 1192
end points, 612, 616
End property, 436
EndCap property, 829, 833, 836
EndContainer method, 268
EndOfStreamException exception, 1199
EndPath method, 690
EndPrint event, 1007
ends (caps), 829-36
ends of lines, 179-81
EndsWith method, 1244
EndUpdate method, 1059
Engelbart, Douglas C., 295
enhanced metafile format (Emf) property, 474, 476
EnhancedDate class, 34, 36, 37
EnterLeave.vb program, 324-25
Entries property, 486
EnumerateEnumerationCombo.vb program, 893-97
EnumerateEnumeration.vb program, 879-84
EnumerateMetafile method, 1125-26, 1127, 1128
enumerating metafiles, 1125-31
EnumMetafileProc method, 1126, 1127, 1128
EnumMetafile.vb program, 1128-31
Environment class, 50, 1200-1202
EnvironmentBars.vb program, 889-90
Environment.SpecialFolder enumeration, 1201-2
Equals method, 88, 89, 1244
EscapePressed property, 1175
EvenBetterBlockOut.vb program, 320-22
event handlers, 61
EventArgs class, 1008
event-driven input, 60-62
events
CheckBox, 569-70, 574
ComboBox, 892-93
Control, 79, 101, 209, 225, 238, 301-2, 322, 324, 839, 1170-72, 1174-75
FontDialog, 759
Form, 207, 236-37, 964
key-down and key-up, 209-10, 222
ListBox, 889
ListView, 1086-93
MenuItem, 655, 675
mouse, 300-303, 324-25
NumericUpDown, 899
On methods and, 79-83
PrintDocument, 1007, 1008-14
RadioButton, 593
ScrollBar, 597-98
ScrollEventArgs, 599-600
Splitter, 1053
Timer, 426-27
toolbar, 978-82
TrackBar, 606
TreeView, 1060-62
Exception class, 24
exception handling
introduced, 23-25
throwing exceptions, 25-27
Exception object, 24
exceptions
ArgumentOutOfRangeException, 27
DivideByZeroException, 1219, 1223
EndOfStreamException, 1199
FileNotFoundException, 1180
IOException, 1180
OverflowException, 1219
Exchangeable image format (Exif) property, 474, 476
ExcludeClip method, 717
exclusive-OR (XOR) drawing, 314-15, 521
Exif (Exchangeable image format) property, 474, 476
Exists method, 1207, 1213
Exists property, 1206, 1212
Exit method, 58, 306
ExitOnX.vb program, 211-12
Exp method, 1227-28
Expand method, 1064
ExpandAll method, 1064
ExpandWildCard method, 1212
ExplorerLike.vb program, 1091-93
Extension property, 1206, 1207, 1213
ExtractAssociatedIcon function, 1090
F
f prefix, 40
face (typeface) name, 352
Families method, 668
Families property, 385, 390, 391, 392
FamiliesList.vb program, 388-90
family of type, 352
figures (subpaths), 691
file and stream programs
HexDump.vb, 1184-86
HtmlDump.vb, 1195-96
StreamWriterDemo.vb, 1193
WildCardHexDump.vb, 1210-12
File class, 1204-5, 1212-15
FileAccess enumeration, 15, 1181
FileAttributes enumeration, 1208-9
FileDialog class, 755
OpenFileDialog class, 755, 768-76
SaveFileDialog class, 755, 776-79
FileInfo class, 1204-5, 1212-15
FileListView class, 1088, 1091, 1093
FileListView.vb program, 1088-90
FileMode enumeration, 15, 1180, 1181
FileName property, 768, 770, 776
FileNames property, 768
FileNotFoundException exception, 1180
files, defined, 1179
files and streams
binary file I/O, 1197-1200
Environment class, 1200-1202
file and path name parsing, 1202-4
file manipulation and information, 1212-15
FileStream class
introduced, 1179-81
problem with, 1186-87
properties and methods, 1182-86
introduced, 1179
other stream classes, 1187-88
parallel classes, 1204-5
reading and writing text, 1188-96
working with directories, 1206-12
FileShare enumeration, 1181
FileStream class
introduced, 1179-81
problem with, 1186-87
properties and methods, 1182-86
FileStream object, 1114, 1179, 1182, 1184, 1197
FileSystemInfo class, 1207
Fill method, 455, 803
fill mode, 201-4
Fill property, 742, 744, 750
FillClosedCurve method, 636
FillComboBox method, 897
FillEllipse method, 198, 460, 699, 1111
FillMode enumeration, 201, 636
FillMode property, 692
FillModesClassical.vb program, 201-2
FillModesOddity.vb program, 203-4
FillPath method, 698, 699, 708, 721, 931, 938, 942
FillPie method, 198-99
FillPolygon method, 200-201, 455
FillRectangle method, 197-98, 245, 811, 812
FillRectangles method, 198
FillRegion method, 721
FillTextBox method, 883-84, 896
Filter property, 774
FilterIndex property, 774, 778
filters, 772-74
Finally blocks, 25
FindDialog class, 861, 866
FindReplaceDialog.vb program, 861-66
first programs, 2-3, 5-7. See also "Hello, world!" programs
FirstBasicProgram.vb, 2-3 program, 5
FirstMainMenu.vb program, 647-50
FirstNode property, 1063
FixedPitchOnly property, 759
Flags property, 486
FlatStyle enumeration, 548
Flatstyle property, 548
Flatten method, 705, 708
floating-point infinity, 1222-24
floating-point remainders, 1227
Floor method, 1225-26
Flower.vb program, 698-700
Flush method, 1183, 1193, 1198
Focus method, 237
Focused property, 237
Font class, 66, 67, 129, 355, 357, 369, 372, 397
font metrics, 380-84
Font object, 66, 356, 357, 369, 372, 375, 506, 582, 680, 681, 765-66, 986
font programs. See also text programs
AllAboutFont.vb, 373-74
BetterFamiliesList.vb, 387
BetterFontAndColorDialogs.vb, 762-63
BlockFont.vb, 917-18
BoldAndItalicBigger.vb, 364
BoldAndItalic.vb, 358-59
FamiliesList.vb, 388-90
FontandColorDialogs.vb, 756-58
FontMenuForm.vb, 910-11
FontMenu.vb, 666-69
FontNames.vb, 361-62
FontSizes.vb, 362-63
GetFamiliesList.vb, 390
HollowFontCenteredPath.vb, 935-36
HollowFont.vb, 933-35
HollowFontWidened.vb, 941-42
HollowFontWidePen.vb, 939-41
HowdyWorldFullFit.vb, 376-77
HowdyWorld.vb, 374-76
InstalledFontsList.vb, 391-92
NaiveFamiliesList.vb, 385-86
RotatedFont.vb, 919-20
TextOnBaseline.vb, 383-84
TwentyFourPointPrinterFonts.vb, 367-69
TwentyFourPointScreenFonts.vb, 365-67
Font property
control programs, 538, 544, 546, 571, 575, 583, 584, 585
dialog box programs, 756, 757, 758, 767, 770
font and text programs, 356, 358, 364, 374, 840
form-related programs, 66-67, 71
image and bitmap programs, 503-4
menu programs, 676
mouse programs, 306
page-related programs, 249, 253, 260, 265-66
system information programs, 129
tree view and list view programs, 1083
vector graphics programs, 171
FontAndColorDialogs.vb program, 756-58
FontCollection class, 391
FontCollection property, 391-92
FontDialog class, 372, 755, 756-63, 871
FontFamily class, 381, 391
FontFamily object, 357, 378-80, 392
arrays, 385-90
FontFamily property, 371, 378
FontHeight property, 129, 356
FontMenuForm class, 910, 911
FontMenuForm.vb program, 910-11
FontMenu.vb program, 666-69
FontNames.vb program, 361-62
fonts. See also text
Arial, 354
ascenders, 382
baseline, 382, 383-84
bitmap (raster), 351, 352
ClearType, 352, 395, 396
Courier, 353
creating by name, 359-64
default, 356
defined, 354
descenders, 382
design metrics, 380-84
DrawString method and, 392-94
font metrics, 380-84
FontCollection property, 391-92
FontFamily object, 357, 378-80
arrays, 385-90
getting started, 909-11
height (em size, point size), 352, 354-55, 364-69, 381-82, 383
Helvetica, 354
introduced, 66-67, 351-52
italic, 353
line spacing, 355, 381-82, 383
oblique, 353
OpenType, 352
outline, 352
roman (serif), 354
sans serif, 354
serif (roman), 354
stroke (plotter, vector), 351, 352
Times New Roman, 354, 381-83
transforms, 919-30
nonlinear, 944-50
TrueType, 352, 353
typographical terminology, 352-54
units, 369-71
variations on, 357-59
FontSizes.vb program, 362-63
FontStyle enumeration, 357-58, 578, 579, 581, 931, 933, 986
FontStyle object, 986
FontStyleCheckBox object, 581
ForeColor property, 107, 113, 164, 462, 538, 546, 603, 676-77, 756, 757, 758, 954, 1083
ForegroundColor property, 784
foreign keyboards, 233-37
Form class, 52, 53, 58, 74, 75, 76, 128, 129, 206-7, 728, 731, 741
form coordinates, 103
Form object, 56, 58, 67, 72, 86, 301
Format method, 11, 442, 1252
FormatFlags property, 245, 399
formatting strings, 9-11, 1252
FormBorderStyle enumeration, 59
FormProperties.vb program, 58-60
form-related programs
FormProperties.vb, 58-60
FormSize.vb, 100-101
FourCorners.vb, 118-19
HelloCenteredAlignment.vb, 119-20
HelloCenteredMeasured.vb, 121-22
HelloCenteredRectangle.vb, 123
HelloWorld.vb, 78-79
HuckleberryFinn.vb, 124-25
InheritTheForm.vb, 74-75
InheritWithConstructor.vb, 75-76
InheritWithPaint.vb, 76-77
InstantiateHelloWorld.vb, 81-83
NewForm.vb, 51-52
PaintEvent.vb, 64-65
PaintHello.vb, 70
PaintTwoForms.vb, 71-72
RandomClearResizeRedraw.vb, 115-16
RandomClear.vb, 114
RunFormBadly.vb, 55-56
RunFormBetter.vb, 56-57
ShowFormAndSleep.vb, 54-55
ShowForm.vb, 53
TwoForms.vb, 57-58
TwoPaintHandlers.vb, 73-74
forms
active, 206-7
client area, 51, 69, 99-103, 149-53, 268-72
controls as children of, 564-67
defined, 51
inheriting, 74-76
introduced, 51-53
multiple, 71-72
point conversions, 103-4
presentation area, 127
properties, 58-60
running, 55-58
showing, 53-55
size, 97-99
FormSize.vb program, 100-101
FormStartPosition enumeration, 735-36
FormStartPosition property, 60
FormWindowState enumeration, 847
fountain (transition between two colors), 800
FourByFours.vb program, 199-200
FourCorners.vb program, 118-19
frame animation, 522
FrameBorderSize property, 149
frames, 1040
FromArgb method, 106, 761, 768
FromFile method, 477, 478, 479, 511, 775-76, 1071, 1074, 1075, 1096, 1097, 1098
FromHbitmap method, 477
FromHdc method, 163, 372
FromHfont method, 372
FromHwnd method, 163
FromImage method, 163, 471, 502-3, 516, 1098
FromLogFont method, 372
FromLTRB method, 95, 333
FromName method, 659
FromPage property, 1001, 1024
FromStream method, 477, 480-81, 482, 511
FromSystemColor method, 111
full-color (true-color) bitmaps, 473
FullFit.vb program, 936-38
FullName property, 1206, 1207, 1212
FullOpen property, 759, 760
FullPath property, 1064-65, 1067
function keys, 213
Next
Last Updated: August 2, 2002
|