BN.com Gift Guide

Directx 9 User Interfaces: Design And Implementation

Overview

Companion CD included with Paint Shop Pro 8 evaluation edition!
Interfaces strongly affect how an application or game is received by a user, no matter which cutting-edge features it may boast. This unique book presents a comprehensive solution for creating good interfaces using the latest version of DirectX. This involves building an interface library from the ground up. Divided into three sections, the book discusses the foundations of interface design, the construction of a ...

See more details below
Available through our Marketplace sellers.
Other sellers (Paperback)
  • All (10) from $1.99   
  • New (3) from $6.01   
  • Used (7) from $1.99   
Close
Sort by
Page 1 of 1
Showing All
Note: Marketplace items are not eligible for any BN.com coupons and promotions
$6.01
Seller since 2008

Feedback rating:

(2393)

Condition:

New — never opened or used in original packaging.

Like New — packaging may have been opened. A "Like New" item is suitable to give as a gift.

Very Good — may have minor signs of wear on packaging but item works perfectly and has no damage.

Good — item is in good condition but packaging may have signs of shelf wear/aging or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Acceptable — item is in working order but may show signs of wear such as scratches or torn packaging. All specific defects should be noted in the Comments section associated with each item.

Used — An item that has been opened and may show signs of wear. All specific defects should be noted in the Comments section associated with each item.

Refurbished — A used item that has been renewed or updated and verified to be in proper working condition. Not necessarily completed by the original manufacturer.

New
1556222491 Brand new, Never used! All day low prices, buy from us sell to us we do it all!!

Ships from: Aurora, IL

Usually ships in 1-2 business days

  • Canadian
  • Standard, 48 States
  • Express, 48 States
$6.62
Seller since 2005

Feedback rating:

(623)

Condition: New
2004 Paperback Sealed CD Included! BRAND NEW BOOK! ! SHIPS W/IN 24 HOURS! Processed by DHL with USPS delivery for an average of 3-5 Day Standard Shipping & 2-3 Day Expedited ... Shipping! ! FREE INSURANCE! Fast & Personal Support! Careful Packaging. No Hassle, Full Refund Return Policy! Read more Show Less

Ships from: Alton, IL

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
$8.51
Seller since 2005

Feedback rating:

(1625)

Condition: New
New

Ships from: Fort Worth, TX

Usually ships in 1-2 business days

  • Canadian
  • International
  • Standard, 48 States
  • Standard (AK, HI)
  • Express, 48 States
  • Express (AK, HI)
Page 1 of 1
Showing All
Close
Sort by
Sending request ...

Overview

Companion CD included with Paint Shop Pro 8 evaluation edition!
Interfaces strongly affect how an application or game is received by a user, no matter which cutting-edge features it may boast. This unique book presents a comprehensive solution for creating good interfaces using the latest version of DirectX. This involves building an interface library from the ground up. Divided into three sections, the book discusses the foundations of interface design, the construction of a feature-rich interface library, and the creation of a fully functional media player in DirectShow.

Read More Show Less

Product Details

  • ISBN-13: 9781556222498
  • Publisher: Jones & Bartlett Learning
  • Publication date: 1/31/2004
  • Edition description: 1E
  • Pages: 354
  • Product dimensions: 6.00 (w) x 8.90 (h) x 0.90 (d)

Table of Contents

Acknowledgements xv
Introduction xvii
Chapter 1 User Interfaces 1
1.1 User Interfaces--What Are They? 2
1.2 Controls--Gadgets and Gizmos 4
1.2.1 Text Boxes 5
1.2.2 Text Edits 6
1.2.3 Buttons 7
1.2.4 Labels 8
1.2.5 List Boxes 9
1.2.6 Drop-Down Lists 10
1.2.7 Check Boxes 11
1.2.8 Menus 12
1.2.9 Page Controls/Tab Controls 13
1.2.10 Windows and Other Containers 14
1.3 Interface Flow Diagrams--Interfaces on Paper 15
1.4 Interface Design--Tips and Tricks 16
1.4.1 Be Consistent 17
1.4.2 Know Your Audience 17
1.4.3 Justification and Alignment 18
1.4.4 Grouping Data 19
1.4.5 Error Handling 19
1.4.6 Disabling Program Features 20
1.4.7 Graphics, Colors, Icons, and Art 21
1.4.8 Balancing Text and Symbols 21
1.4.9 Paths and Navigation 22
1.4.10 Keyboard Support 24
1.4.11 Tool Tips 24
1.5 Conclusion 24
Chapter 2 Introducing DirectX 27
2.1 DirectX--What Is It? 28
2.1.1 Direct3D--Graphics 29
2.1.2 DirectInput--Keyboards, Mice, and Joysticks 29
2.1.3 DirectMusic and DirectSound--MIDI and WAV 30
2.1.4 DirectPlay--Networking 30
2.1.5 DirectShow--Programmable Media Player 30
2.2 DirectX--Other Features 31
2.2.1 Mesh Viewer 31
2.2.2 Error Lookup 32
2.2.3 Caps Viewer 33
2.2.4 GraphEdit 34
2.2.5 Texture Tool 35
2.3 System Requirements 36
2.4 Where to Obtain DirectX 36
2.5 Installation 37
2.6 Installed Files 38
2.7 Configuring Visual C++ 39
2.8 Coding with Hungarian Notation 42
2.9 Conclusion 43
Chapter 3 Introducing Direct3D 45
3.1 Direct3D Concepts--Overview and Mathematics 46
3.2 Getting Started Programming Direct3D Applications 51
3.3 Programming Direct3D Applications 48
3.4 Initializing Direct3D 52
3.5 Creating a Direct3D Device--A Graphics Card 53
3.6 Preparing to Render 56
3.7 Initializing World Data 58
3.7.1 Direct3D Surfaces--IDirect3DSurface9 59
3.7.2 Direct3D Surfaces--Loading Image Files 60
3.7.3 Direct3D Surfaces--Rendering 62
3.7.4 Direct3D Textures--IDirect3DTexture9 65
3.7.5 Direct3D Textures--Preparing to Render 66
3.7.6 Direct3D Textures--Rendering 67
3.8 Alpha Blending 72
3.8.1 Using Adobe Photoshop 73
3.8.2 Using Paint Shop Pro 74
3.8.3 Using the DirectX Texture Tool 75
3.8.4 Enabling Alpha Blending in Direct3D 76
3.9 Conclusion 77
Chapter 4 Introducing DirectInput 79
4.1 DirectInput Basics 80
4.2 Getting Started 80
4.3 Programming 82
4.4 Creating a DirectInput Object 83
4.5 Creating DirectInput Devices 85
4.6 The Keyboard 86
4.6.1 Creating the Keyboard 86
4.6.2 Configuring the Keyboard 87
4.6.3 Reading from the Keyboard 90
4.7 The Mouse 92
4.7.1 Creating the Mouse 92
4.7.2 Setting the Cursor 93
4.7.3 Reading from the Mouse 95
4.7.4 Processing the Cursor Position 96
4.7.5 Reading Mouse Buttons 97
4.8 Conclusion 98
Chapter 5 Wrapping Direct3D 99
5.1 CXSurface--Wrapping Surfaces 100
5.1.1 Instantiating and Deleting CXSurface 101
5.1.2 Loading Images 102
5.1.3 Copying Surfaces 102
5.1.4 Representing the Back Buffer 103
5.1.5 Rendering 104
5.1.6 Using CXSurface 104
5.2 CXTexture--Wrapping Textures 106
5.2.1 Instantiating and Deleting 107
5.2.2 Loading Images 107
5.2.3 Preparing to Render 108
5.3 CXPen--Wrapping ID3DXSprite 109
5.3.1 Instantiating and Deleting 109
5.3.2 Rendering Textures 110
5.3.3 Using CXPen and CXTexture 111
5.4 Conclusion 112
Chapter 6 Abstracting DirectInput 113
6.1 CXInput--The DirectInput Object 114
6.1.1 Instantiating the DirectInput Object 115
6.1.2 Creating Input Devices 116
6.2 CXKeyboard--Wrapping the Keyboard Device 117
6.2.1 Instantiating Keyboard Devices 118
6.2.2 Reading from CXKeyboard 119
6.3 Wrapping the Mouse Device 121
6.3.1 CXMouseSurface--Wrapping a List of Cursors 121
6.3.2 Linked Lists--A Definition 122
6.3.3 Navigating Linked Lists 123
6.3.4 Adding New Items to Linked Lists 124
6.3.5 Deleting Linked Lists 125
6.3.6 CXMouseSurface--Other Properties 125
6.3.7 Wrapping the Mouse Device with CXMouse 126
6.3.8 Initializing Mouse Cursors with CXMouse 129
6.3.9 Changing Mouse Cursors with CXMouse 131
6.3.10 Reading Mouse Data with CXMouse 132
6.3.11 Reading Cursor Positions with CXMouse 133
6.3.12 Reading Button States with CXMouse 133
6.4 Conclusion 134
Chapter 7 Beginning CXControl 135
7.1 UI LIB (User Interface Library)--What Is It? 136
7.2 UI LIB--Controls as Classes 136
7.3 Controls--Class Hierarchy and Base Controls 137
7.4 CXControl--The Beginnings 138
7.5 Defining CXControl--Controls and a Canvas 139
7.6 CXControl--Parent, Sibling, and Child Controls 140
7.6.1 Adding Child Controls 143
7.6.2 Clearing Child Controls 144
7.6.3 Removing Specific Children 145
7.6.4 Counting Child Controls 146
7.7 Absolute and Relative Positioning 146
7.7.1 Computing Positions 149
7.8 CXControl--The Class Declaration Thus Far 150
7.9 Conclusion 151
Chapter 8 Continuing CXControl 153
8.1 Messages 154
8.1.1 Posting Messages 157
8.1.2 Message Specifics 157
8.2 Handling Mouse Messages 158
8.2.1 Cursor Intersection 160
8.2.2 Hierarchical Posting 161
8.2.3 Triggering Mouse Events 163
8.3 Handling Keyboard Messages 164
8.3.1 Focus 165
8.3.2 Triggering Events 166
8.4 Handling Control Painting 167
8.5 Posting in Reverse 168
8.6 Depth Sorting 170
8.7 Triggering Paint Events 173
8.8 CXControl--The Final Declaration 174
8.9 Conclusion 176
Chapter 9 Developing Windows 179
9.1 CXWindow--Deriving from CXControl 180
9.2 Desktop and Application Windows 181
9.3 Class CXWindow as a Parent 181
9.4 Implementing the Parent Window 183
9.5 CXWindow as a Child Window 183
9.6 Implementing Child Windows 184
9.6.1 Child Windows--Loading the Canvas 185
9.6.2 Painting Application Windows 186
9.6.3 Dragging Application Windows 187
9.6.4 Minimizing and Restoring Application Windows 190
9.7 Using CXWindow--Sample Application 193
9.7.1 Overview 198
9.7.2 Desktop Initialization 198
9.7.3 Window Initialization 199
9.7.4 Windows Message Posting 199
9.7.5 Deleting an Interface 200
9.8 Conclusion 201
Chapter 10 Labels and Buttons 203
10.1 Labels and Buttons 204
10.2 CXLabel--Labels 204
10.3 Labels as ID3DXFont 205
10.3.1 Instantiating ID3DXFont 206
10.3.2 Setting the Label Caption 209
10.3.3 Painting with ID3DXFont 209
10.3.4 Releasing ID3DXFont 212
10.4 CXButton--Buttons 212
10.5 CXButton--The Class Declaration 213
10.5.1 The Class Constructor 214
10.5.2 Setting Pressed and Unpressed Images 215
10.5.3 Setting the Button Caption 216
10.5.4 Painting 217
10.5.5 Destructor 218
10.6 CXLabel and CXButton--A Sample Application 219
10.7 Conclusion 224
Chapter 11 Text Boxes and Check Boxes 225
11.1 Text Boxes and Check Boxes 226
11.2 Text Boxes 226
11.3 Clever Strings--Std::String 227
11.3.1 Initialization and Assigning 228
11.3.2 String Lengths 229
11.3.3 Editing and Appending Strings 229
11.3.4 Copying Substrings 230
11.3.5 Converting Strings to char 230
11.3.6 Erasing and Emptying 231
11.4 Lines--ID3DXLINE 231
11.4.1 Drawing Lines 232
11.5 CXTextBox--The Class Declaration 233
11.5.1 Constructor 234
11.5.2 Text Width and Height 235
11.5.3 Setting Text 236
11.5.4 Text Box Caret 236
11.5.5 Inserting Text 237
11.5.6 Removing Text 238
11.5.7 Processing Keypresses 238
11.5.8 Cursor Positioning 240
11.5.9 Caret at Cursor 241
11.5.10 Handling the Mouse 242
11.5.11 Painting 242
11.5.12 Cleaning Up 243
11.6 Check Boxes 244
11.7 CXCheckBox--The Class Declaration 244
11.7.1 Image and Text Loading 245
11.7.2 Checking and Unchecking 246
11.7.3 Painting 246
11.7.4 Cleaning Up 247
11.8 Conclusion 247
Chapter 12 Scrolling Lists 249
12.1 Scroll Bars, List Boxes and Drop-Down Lists 250
12.2 CXScrollBar--Scroll Bars as a Class 250
12.2.1 The Class Constructor 253
12.2.2 Arrows, a Thumb, and a Background 253
12.2.3 Width and Height, Min and Max 255
12.2.4 Screen Positions to Scroll Values 255
12.2.5 Scaling the Thumb 257
12.2.6 Setting the Thumb Position 258
12.2.7 Handling Input 259
12.2.8 Tiling the Background 260
12.2.9 Painting 261
12.2.10 CXScrollBar--Cleaning Up 262
12.3 List Boxes and List Items 263
12.4 CXListItem--ListItems as a Class 263
12.4.1 The Class Constructor 265
12.4.2 Setting Item Size 265
12.4.3 Painting 266
12.5 CXListBox--List Boxes as Classes 268
12.5.1 The Class Constructor 271
12.5.2 Loading Item Backgrounds 271
12.5.3 Loading the Scroll Bar 272
12.5.4 Computing a List Frame 273
12.5.5 Adding List Items 274
12.5.6 Clearing List Items 276
12.5.7 Getting Items by Index 277
12.5.8 Getting Items by (X,Y) Position 277
12.5.9 Scrolling the Frame 278
12.5.10 Handling Input 280
12.5.11 Painting 281
12.5.12 Cleaning Up 282
12.6 CXDropDownList--Drop-Down Lists as Classes 283
12.6.1 The Class Constructor 285
12.6.2 Initializing the Drop-Down List 286
12.6.3 Showing and Hiding the List 287
12.6.4 Handling Input 288
12.6.5 Painting 289
12.6.6 Cleaning Up 290
12.7 Conclusion 290
Chapter 13 Introducing DirectShow 291
13.1 DirectShow--What Is It? 292
13.2 Getting Started 294
13.3 The Filter Graph 295
13.4 The Media Control 297
13.5 The Event Mechanism 297
13.6 Registering for Events 298
13.7 Loading a File 299
13.8 Playing a File
Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)