-
- Weitere Informationen zu diesem Buch:
Inhaltsverzeichnis | Index | Probekapitel | Kolophon | Rezensionen |
Stimmen | Errata | Beispiele |
- Weitere Informationen zu diesem Buch:
Writing Portable GUI applications on Unix and Win32
Second Edition Februar 2002
ISBN 978-0-596-00064-6
Weitere Informationen zu diesem Buch
Inhaltsverzeichnis |
Index |
Probekapitel |
Kolophon |
Rezensionen |
Stimmen |
Errata |
Beispiele |
Index
[ Symbols ], [ A ], [ B ], [ C ], [ D ], [ E ], [ F ], [ G ], [ H ], [ I ], [ J ], [ K ], [ L ], [ M ], [ N ], [ O ], [ P ], [ Q ], [ R ], [ S ], [ T ], [ U ], [ V ], [ W ], [ X ]
Symbols[ Top ]
We'd like to hear your suggestions for improving our indexes. Send email to index@oreilly.com.
\ (backslash), portability and, 376
/ (forward slash), portability and, 376
A[ Top ]
abort/aborted methods (QPrinter), 208
aboutToShow method (QMenuData), 121
accelerators in menus, 121
accept method (QDialog), 165
access methods, 34
access specifiers, 458
access to networks
higher-level, 389-393
low-level, 384-389
actions, 329-331
activeWindow method (QWorkspace), 136
add method
QToolTip, 138
QWhatsThis, 139
addArgument method (QProcess), 288
addColSpacing method (QLayout), 182
addColumn method (QDataTable), 349
addDatabase method (QSqlDatabase), 339
addDays method (QDate/QDateTime), 284
adding
custom slots, 439
widgets to already layouted forms, 461
addLayout method (QHBoxLayout/QVBoxLayout), 180
addMSecs method (QTime), 284
addMultiCellWidget method (layout managers), 182
addRowSpacing method (QLayout), 182
addSecs method (QDateTime/QTime), 284
addSeparator method (QToolBar), 133
addSpacing method (QGroupBox), 178
addTab method (QTabDialog), 169
addTo method (QAction), 331
addToolbar method (QMainWindow/QToolBar), 132
addWidget method
QFileDialog, 155
QHBoxLayout, 177
QStatusBar, 135
QWidgetStack, 126
alignment, for labels, 129
ampersand (&) for menu entries, 70
animations, 203-205
canvas and, 231
API emulation, 23
API layering, 22
appendChild method (QDomNode), 263
applications
exchanging data between, 277-283
PerlQt, 408-415
(see also network programming)
arg method (QString), 241
arrangers, 122-126
at method (QFile), 269
Autoconf program, 379
autodeletion, containers and, 198
Automake program, 379
AVI format, 203
B[ Top ]
background color, 213
backslash (\), portability and, 376
base color, 213
begin method (QPainter), 60
bitBlt method (QPaintDevice), 223
bitmap graphics, loading and saving, 234-237
BLOB method (QSqlDriver), 360
blocking method (QSocket), 378
blockSignals method (QObject), 327
bool datatype, 35
bounded-range input, widgets for, 114-118
date/time values, 118
box layout vs. grid layout, 182
BrightText color, 214
browse box (custom widget), 304-317
brushes, selecting, 215
bubble help (see tooltips)
buddies, assigning, 129
bugs in Qt, 22
(see also troubleshooting Qt; debugging)
button group tool, 427
button groups, 427
assigning header text, 428
laying out, 448
buttons, 107-110
color of, 213
connecting several to one slot, 328
laying out in a row (example), 176
adding rows to, 179
in toolbars, 132
ButtonText color, 213
bytesAvailable method (QSocketDevice), 378
C[ Top ]
C++
container classes and, 192
name mangling, 286
signal-and-slot mechanism implemented in, 49
as used by Qt, 34
caching data, 198
callbacks (callback functions), 46
cancelButtonPressed method (QTabDialog), 170
canDecode method (QStoredDrag), 282
canvas
animations and, 231
collision tests and, 231
drawing graphical elements on, 227-232
items, adding to/moving over, 230-232
mouse events and, 231
carriage return/linefeed, portability and, 377
cascade method (QWorkspace), 136
center method (QScrollView), 141
character strings, converting, 98
checkbox tool, 425
checkboxes, 108-110, 425
checkOverflow method (QLCDNumber), 131
child processes
debugging and, 370
spawning, 288
classes, 34, 38
for accessing files and directories, 267
arrangers, 122-126
container, 192-202
choosing, 195
iterators, 199, 200
reducing memory consumption with, 198
reference-based, 196-200
as understood in other programming languages, 192
value-based, 200-202
for layment managers, 175
multithreading, 363-367
OpenGL, 395
Qt Netscape plug-in, 400
Qt Xt extension, 407
widget (see widget classes)
clear method
container classes and, 198
QStatusBar, 134
QToolTipGroup, 138
clicked method (QListBoxItem), 112
ClickFocus policy, 318
clipboard, 277
clipboard method (QApplication), 277
clipping, 207, 221
code libraries, loading dynamically, 285-288
collision tests, canvas and, 231
color allocation, 210
color cells, 210
color context, 210
color depth, 210
color groups, 212-215
color models, 211
colors
background, 213
base, 213
BrightText, 214
button, 213
ButtonText, 213
dark, 213
dialog boxes for selecting, 156-158
foreground, 213
highlight, 213
HighlightedText, 214
light, 213
managing, 210-215
mid, 213
midlight, 213
palettes, 212-215
selecting, 215
shadow, 213
text, 213
columns, laying out widgets in, 176-178
combo boxes, 112-114
command-line options, 106
compiling Qt, 26
smaller version of, 26
computer mouse, GUI design and, 188
configuration data, reading/writing, 273-276
configuring Qt for multithreading, 363
connect method (QObject), 51, 325
connecting to databases, 339
connection tool, 456
connectItem method (QMenuData), 70
connectNotify method (QObject), 49
connectResize method (QMovie), 204
connectStatus method (QMovie), 204, 205
connectUpdate method (QMovie), 204
constructors for widgets, 104
debugging and, 370
container classes, 192-202
choosing, 195
iterators, 199, 200
in other programming languages, 192
reducing memory consumption with, 198
reference-based, 196-200
value-based, 200-202
contentsMoving method (QScrollView), 141
context menus (see pop-up menus)
context method (QGLWidget), 395
context-sensitive features, GUI design and, 189
continueSearch method (QObject), 327
controls (see widgets)
convertDepth method (QImage), 235
convertSeparators method (QDir), 376
coordinate selector (custom widget), 295-304
coordinate system transformations (see two-dimensional transformations)
copy method (QUrlOperator), 393
cost, for entries, 198
count method, container classes and, 198
create method
QNPlugin, 400
RotatePlugin, 405
createAttribute method (QDomDocument), 263
createElement method (QDomDocument), 263
createTextNode method (QDomDocument), 263
creating forms, 421
critical method
QErrorMessage, 164
QMessageBox, 161
currentDate method (QDate), 284
currentDateTime method (QDateTime), 284
currentItem method
QComboBox, 113
QListBox, 111
currentThread method (QThread), 378
currentTime method (QTime), 284
cursorFlashTime method (QApplication), 376
cursors
data retrieval with, 344
portability and, 376
setting, 237
custom dialog boxes (see dialog boxes, custom)
custom widgets (see widgets, custom; widgets, custom)
customColor method
QApplication, 211
QColorDialog, 157
customCount method (QColorDialog), 157
D[ Top ]
dark color, 213
DashLine method (QPen), 215
data
caching, 198
configuration, reading/writing, 273-276
exchanging between applications, 277-283
(see also data in databases)
data in databases
displaying, 347-355
in forms, 349-354
manipulating, 356-359
metadata, 360
retrieving, 341-344
with cursors, 344
database drivers, 338
database method (QSqlDatabase), 339
databases
accessing, 336-361
connecting to, 339
data display, 347-355
in forms, 349-354
manipulating data, 356-359
metadata, 360
records, sorting, 346
retrieving data from, 341-344
with cursors, 344
supported by Qt, 336
transactions, 360
date operations, 446
date/time values
widgets for entering, 118
working with, 284
de code for German, 239
deadlocks, 365
debugging, 369-371
macros defined for, 369
multithreading and, 362
plug-ins, 401
portability and, 375
decode method (QStoredDrag), 282
defaultButtonPressed method (QTabDialog), 170
defaults for push buttons, 108
del method (QSqlCursor), 359
desktop method (QApplication), 313
dialog boxes, 153-173
color selection, 156-158
custom, building blocks for, 164-173
error message, 164
extensions, 168
file selection, 153-156
font selection, 158
GUI design and, 190
input, 161
message boxes (see message boxes)
modal vs. nonmodal, 164
GUI design and, 190
predefined, 153-163
for print settings, 205
progress, 162
size of, 165
tab, 169-172
warning, 160
wizards and, 172
dials, 116
directories
classes for accessing, 267
dialog boxes for selecting, 153-156
path separators, portability and, 376
QFileInfo class and, 271-273
traversing, 270-272
working with, 267-273
disconnect method (QObject), 327
dock method (QDockWindow), 137
docking windows, 132, 136
Document Object Model (DOM), processing XML with, 260-264
Document Type Definition (DTD), 257
DOM (Document Object Model), processing XML with, 260-264
double-buffering, 222-227
double-click interval, portability and, 376
doubleClicked method
QListBoxItem, 112
QListViewItem, 145
drag method (QDragObject), 280
drag-and-drop, 278-283, 437
dragCopy method (QDragObject), 280
dragEnterEvent method (QWidget), 281
dragMove method (QDragObject), 280
dragMoveEvent method (QWidget), 281
drawContents method (QFrame), 123
drawContentsOffset method (QScrollView), 140
drawing, 215-222
operations for QPainter (list of methods), 216
drawLine method (QPainter), 216
drawPixmap method (QPainter), 224
drawRotatedText method (QPainter), 218
drawText method (QPainter), 216
drivers, database, 338
dropEvent method (QWidget), 281
dropped method (QListView), 146
DTD (Document Type Definition), 257
dumpObjectInfo method (QObject), 370
dumpObjectTree method (QObject), 370
dynamic menus, implementing, 121
E[ Top ]
edit fields, GUI design and, 190
editions of Qt, 25
elapsed method (QTime), 284
embedded systems, portability and, 372
en code for English, 238
enabled property, 424
end method (QPainter), 60
enterAllocContext method (QColor), 210
entryList method (QSettings), 276
error message dialog boxes, 164
errors (see debugging)
escape sequences, 254
event filters, 321-323
event handling, 55-62
advanced, 321-324
eventFilter method (QObject), 321
events, 46
handling (see event handling)
multithreading and, 367
SAX and, 258
synthetic, 323
exec method
multithreading and, 367
QApplication, 39
QDialog, 154
QWidget, 312
exists method (QFile), 269
explicit geometry management, 174
mixing with implicit, 185
expressions, regular (see regular expressions)
extensions, 168
for interfacing with other libraries, 394-397
Qt Netscape plug-ins, 398-406
Qt Xt, 406
F[ Top ]
fake events (see synthetic events)
feedback, GUI design and, 189
fields, text-entry, 127
figures, drawing, 215-217
file globbing, 256
File menu, defining, 63-89
filenames, portability issues, 375
files
classes for accessing, 267
dialog boxes for selecting, 153-156
downloading from FTP server, 390
encapsulating information about, 272
generated, not changing, 438
input/output, 89-99
makefile, importing, 416
previews and, 154
QFileInfo class and, 271-273
text, reading, 267-269
working with, 267-273
XML, reading/writing, 256-264
finished method (QMovie), 205
firstChild method (QDomNode), 262
FLI format, 203
flicker effect, 222
flushX method (QApplication), 376
focus policies, 318-320
guidelines for choosing, 319
focusInEvent/focusOutEvent methods (QWidget), 294
focusNextPrevChild method (QWidget), 319
fonts, 104
dialog boxes for selecting, 158
foreground color, 213
format method (QGLWidget), 395
forms
adding widgets, 425
creating, 421
using custom widgets on, 361
defined, 422
displaying data in, 349-354
with navigation buttons, 352-355
form editor, 425
loading existing, 437
manipulating data with, 358
types, 422
forward slash (/), portability and, 376
fr code for French, 239
frames, 123, 203
frameworks, 20
FreeBSD, Qt contained in distribution of, 24
fromString method (QDate/QTime/QDateTime), 285
G[ Top ]
geometric shapes, 216
geometry management, 425, 446, 461-464
advantages, 447
explicit, 174
implicit, 183-185
classes inherited from QWidget for, 183
mixing explicit and implicit, 185
spacers, 453, 462
sublayouts, 462
used in two steps, 461
geometry managers
selecting the correct one, 451
types, 448
vertical layout, 449
getColor method (QColorDialog), 156
getExistingDirectory method (QFileDialog), 154
getFont method (QFontDialog), 158
getMIMEDescription method
QNPlugin, 400
RotatePlugin, 405
getOpenFileName method (QFileDialog), 154
getPluginDescriptionString method
QNPlugin, 400
RotatePlugin, 405
getPluginNameString method
QNPlugin, 400
RotatePlugin, 405
getRgba method (QColorDialog), 156
getSaveFileName method (QFileDialog), 154
GIF format, 203
graphics, 203-237
animations (see animations)
bitmap, loading and saving, 234-237
labels for displaying, 130
transformations, 217
grid layout
vs. box layout, 182
managers, 181-183
group boxes, 123, 427
assigning header text, 428
GUI builders, advantages, 419
GUI design, 186-191
guidelines for, 186-191
help for users and, 334
multithreading and, 367
GUI emulation, 23
widget styles and, 105
GUI libraries, cross-platform, 22
GUI toolkits, 19
cross-platform programming and, 22
GUI-emulating, 23
Unix and, 19
Windows and, 20
H[ Top ]
handle method
QCursor, 376
QFont, 377
QPaintDevice, 377
QPainter, 377
header files, 38
generating, 433
"Hello world" sample program, 37-41
push button, adding to, 44-46
help
obtaining for Qt, 35
providing for users, 332-335
online help, 333
tooltips, 332
What's This windows, 333
helpedClicked method (QWidget), 173
hide method
QButtonGroup, 329
QDialog, 164
QWorkspace, 135
highlight color, 213
HighlightedText color, 214
homeDirPath method (QDir), 271
Hoover help (see tooltips)
hourglass, setting cursor as, 237
HSV color model, 211
hsv method (QColor), 212
HTML (Hypertext Markup Language), Qt reference documentation in, 41
hue saturation value color model, 211
Hypertext Markup Language (HTML), Qt reference documentation in, 41
I[ Top ]
icon views, 147
IDE (Integrated Development Environment), 379
Visual C++, 416-419
creating projects, 417
makefiles, importing, 416
Visual Studio integration, 418
IDs, assigning to menu entries, 69
image formats, 203
images, loading and saving custom, 234-237
implicit geometry management, 183-185
classes inherited from QWidget for, 183
mixing with explicit, 185
information method (QMessageBox), 161
information, displaying (see labels)
inheritance, 34
initializeGL method (QGLWidget), 396
input
of data in files, 89-99
dialog boxes, 161
of users, validating, 246-251
input/output, 89
insert method
container classes and, 201
QButtonGroup, 124, 329
QSqlCursor, 359
insertAfter method (QDomNode), 263
insertAt method (QTextEdit), 128
insertBefore method (QDomNode), 263
insertItem method
QComboBox, 113
QGridView, 305
QListBox, 111
QListViewItem and, 143
QMenuData, 121
QPopupMenu, 69
insertLine method (QTextEdit), 128
insertSearchPath method (QSettings), 275
insertSeparator method (QMenuData), 377
insertStringList method
QListBox, 111
QStringList, 113
insertTearOffHandle method (QPopupMenu), 122
installEventFilter method (QObject), 321
installGlobalEventFilter (QApplication), 323
installing
Qt, 26
SQL module, 338
Integrated Development Environment (see IDE)
interfacing Qt
with OpenGL, 394-397
with Perl, 408-415
internationalization, 238-246
GUI design and, 187
labels and, 174
isActive method (QSqlQuery), 343
isAvailable method (QSound), 291
isChecked method (QCheckBox/QRadioButton), 108
isDigit method (QChar), 254
isFinished method (QSound), 291
isFocusEnabled method (QWidget), 319
isLocked method (QMutex), 364
isNull method (QString), 154
itemBelow method (QListViewItem), 145
items, adding to/moving over canvas, 230-232
iterator templates, 199
iterators, 199
J[ Top ]
Java Swing toolkit, actions and, 330
K[ Top ]
KDE (K Desktop Environment) mailing list, 36
key method (QIconViewItem), 147
keyboard accelerators, GUI design and, 186, 188
keyboard focus, 318-320
tab order, 319
keyPressEvent method
QWidget, 294, 313
ScribbleWindow, 81
L[ Top ]
labels, 38, 129-152
changing, 427
internationalization and, 174
languages
codes for, 238
Perl, interfacing with, 408-415
launch method (QProcess), 288
layout management (see geometry management)
layout managers, 174-185
classes for, 175
grid, 181-183
grid vs. box, 182
nested, 179
layoutMargin property, 463
layouts
breaking, 450
properties, 463
undoing, 450
layoutSpacing property, 463
leaveAllocContext method (QColor), 210
leaveWhatsThisMode method (QWhatsThis), 333
libraries
interfacing with, 394-397
loading dynamically, 285-288
OpenGL (see OpenGL programming)
license for Qt, obtaining, 24
light color, 213
Linux
debugging and, 371
GUI toolkits and, 22
Qt contained in distribution of, 24
(see also Unix systems)
list boxes, 111, 112
GUI design and, 190
list views, 141-146
load method
QPixmap, 98, 234
QTranslator, 245
locale, 238
localization, 238-246
(see also internationalization)
lock method
QApplication, 367
QMutex, 364
QThread, 364
longDayName method (QDate/QTime/QDateTime), 285
longMonthName method (QDate/QTime/QDateTime), 285
loopsRemaining method (QSound), 291
lrelease utility, 245, 246
lupdate utility, 242, 246
M[ Top ]
Mac method (QSettings), 275
MacOS X systems, specifying database drivers, 338
mailing lists, KDE, 36
main window, 132
makeCurrent method (QGLWidget), 396
makefiles, 465, 466
importing, 416
manual placement, of widgets, 425
ManyColor method (QApplication), 211
mapFromGlobal method (QWidget), 313
mapToGlobal method (QWidget), 313
markup, 264
maybeTip method (QToolTip), 138
MDI (Multiple Document Interface), 135
memory, classes for reducing consumption of, 198
menu bars
adding, 63-89
separators in, portability and, 377
menu buttons, 108
menu entries
adding, 69
ampersand (&) and, 70
GUI design and, 189
IDs, assigning to, 69
menuBar method (QMainWindow), 132
menu-related widgets, 121, 122
menus
accelerators, 121
creating, 63-73
File menu, 63
dynamic, implementing, 121
GUI design and, 189
items on, changing/manipulating, 69
pop-up (see pop-up menus)
tear-off, 122
message
boxes, 72, 159-161
handler, 369
message method
QErrorMessage, 164
QStatusBar, 134
messages
permanent, 135
status bars and, 134
meta characters, 252
metadata, 360
Meta-Object Compiler (see moc compiler)
MFC (Microsoft Foundation Classes), 21
Microsoft Office suite, interface components resembling, 132-139
mid color, 213
midlight color, 213
MIME (Multimedia Internet Mail Extension), 399
MNG format, 203
moc command, 464
moc compiler, running, 53
modal vs. nonmodal dialog boxes, 164
GUI design and, 190
monitors, grid layouts and, 183
Motif, 19
drag-and-drop and, 279
mouse events, canvas and, 231
mouse, GUI design and, 188
mouseButtonClicked method (QListBoxItem), 112
mouseButtonPressed method (QListBoxItem), 112
mouseMoveEvent method
QGridView, 305
QWidget, 302, 314
ScribbleWindow, 58
mousePressEvent method (QWidget), 58, 294, 302
mouseReleaseEvent method
QGridView, 305
QWidget, 294, 313
moveChild method (QScrollView), 140
moveDockWindow method (QMainWindow), 137
Multimedia Internet Mail Extension (MIME), 399
Multiple Document Interface (MDI), 135
multithreading, 362-368
alternatives to, 367
classes for, 363-367
configuring Qt for, 363
deadlocks, 365
mutexes, 363
pitfalls, 367
synchronization, 365
mutexes, 363
MySQL database, 337
activating driver for, 339
N[ Top ]
name mangling, 286
name method
QDir, 271
QObject, 370
name property, 422
named colors, 211
namespaces, not used by Qt, 35
navigation buttons on forms, 352-355
nested layout managers, 179
Netscape plug-ins, writing, 398-406
network programming, 384-393
access, higher-level, 389-393
access, low-level, 384-389
newConnection method
HTTPMirrorServer, 387
QServerSocket, 387
newStreamCreated method (QNPWidget), 401
newWindow method (QNPInstance), 400, 401
next method (QDataBrowser), 355
nextLine method (QScrollBar), 120
nextPage method (QScrollBar), 120
nextRecordAvailable method (QDataBrowser), 355
nextSibling method (QDomNode), 262
NoFocus policy, 318
NoIcon constant (QMessageBox), 161
nonvalidating parsers, 257
normal messages, 135
NormalColor method (QApplication), 211
NPN_ functions, 400
null constant (QString), 160
numRowAffected method (QSqlQuery), 358
O[ Top ]
objects, 34
creating in "Hello world" sample program, 38
objects of class, 38
Office suite (Microsoft), interface components resembling, 132-139
online help, 333
OObject class, portability and, 377
open method
QFile, 268, 377
QSqlDatabase, 343
OpenGL programming, 394-397
operators, overloading, 34
option buttons (see checkboxes; radio buttons)
options
command-line, 106
widget, 312
output of data in files, 89-99
overrideCursor method (QApplication), 237
P[ Top ]
paint application
creating, 55-62
drawings in, saving to files, 89-99
menus, adding to, 63-73
pop-up, 81-89
scrollbars, adding to, 74-81
(see also OpenGL programming)
paint method (QCustomMenuItem), 122
paintCell method
QGridView, 305
QWidget, 314
paintEvent method
QPainter, 222
QWidget, 294, 302
ScribbleWindow, 61
paintGL method (QGLWidget), 396
palettes, 104, 212-215
parent/child relationships, 428
debugging and, 370
parentWidget method (QToolTip), 138
parsers, validating/nonvalidating, 257
paused method (QMovie), 205
pens, selecting, 215
Perl, interfacing Qt with, 408-415
PerlQt, 408-415
permanent messages, 135
play method (QSound), 291
Plug-in Software Development Kit (Plug-in SDK), 399
plug-ins
debugging, 401
Netscape, 398-406
PNG format, 203
polymorphism, 34
pop-up menus, 81-89
portability, 21, 372-383
debugging and, 375
when Qt is not portable, 375-379
writing programs for, 374
(see also qmake)
pos method (QCursor), 82
POSIX (IEEE Portable Operating System Interface for Computing Environments), 374
postEvent method (QApplication), 323, 366
PostScript format, 205
pressed method (QListBoxItem), 112
preview mode, 430
previews, 154
prevLine method (QScrollBar), 120
prevPage method (QScrollBar), 120
prevRecordAvailable method (QDataBrowser), 355
primaryIndex method (QSqlDatabase), 360
primeDelete method (QSqlCursor), 359
primeInsert method (QSqlCursor), 359
primeUpdate method (QSqlCursor), 351, 359
printing, 205-209
processes
child, spawning, 288
(see also multithreading)
processEvent method
multithreading and, 367
QApplication, 208
processEvents method (QApplication), 368
processOneEvent method (QApplication), 368
programs, examples of (see sample programs)
progress
bars, 139
dialog boxes, 162
properties of widgets, 106, 422
property editor, 422, 426
push buttons, 107, 429, 438
creating, 44-46
defaults, 108
menu buttons, 108
Q[ Top ]
QAction class, 330
qApp global variable, 70
QApplication class, 38, 70, 105
event filters, 323
event handling, 323
portability and, 376
QApplication method (QApplication), 375
QAsciiCache container class, 193
memory consumption, reducing with, 198
Q_ASSERT() macro, 369
QBitArray container class, 193
QBoxLayout class, 175
QBuffer class, 269
QButtonGroup class, 124
connecting several buttons to one slot and, 329
grouping radio buttons and, 109
QByteArray container class, 194
QCache container class, 194
memory consumption, reducing with, 198
QCanvas class, 227-232
QCanvasItem class, 229
QCanvasView class, 228
QCheckBox class, 108-110
Q_CHECK_PTR() macro, 369
QClipboard class, 277
QColorDialog class, 156-158
QColorGroup class, 214
QComboBox class, 112-114
validating user input and, 246
QCursor class, 82
portability and, 376
QCustomMenuItem class, 121, 122
QDataBrowser class, 352, 356
QDataStream class, 267-269
QDataTable class, 347
QDataView class, 352
QDate class, 284
QDateTime class, 284
portability and, 376
qDebug method, 369
portability and, 375
QDial class, 116
QDialog class, 164-169
extensions, 168
QDir class, 271
portability and, 376
QDockArea class, 136
QDockWindow class, 136
QDomDocument class, 260
QDomNode class, 261
QErrorMessage class, 164
QEvent class, 321
qFatal method, 369
portability and, 375
QFile class, 269
QFileDialog class, 153-156
QFileInfo class, 271-273
QFocusData class, 320
QFont class, portability and, 377
QFontDialog class, 158
QFrame class, 123
QGLColormap class, 395
QGLContext class, 395
QGLFormat class, 395
QGLWidget class, 395
QGrid classes, implicit geometry management and, 183
QGridLayout class, 175
QGridView class, 148-151
QGroupBox class, 123, 124
QHBox classes, implicit geometry management and, 183
QHBoxLayout class, 175
nested layouts and, 179
QHButtonGroup class, 124
implicit geometry management and, 184
QHGroupBox class, 124
implicit geometry management and, 184
QIconView class, 147
drag-and-drop and, 279
QImageDrag class, 282
QInputDialog class, 162
qInstallMsgHandler method, 369
QIntCache container class, 194
memory consumption, reducing with, 198
QIntDict container class, 194
QIODevice class, 269
QLabel class, 38, 129, 130
rich text and, 264
QLayout class, 175
QLCDNumber class, 129, 131
QLibrary class, 287
QLineEdit class, 127, 323
validating user input and, 246
QListBox class, 111, 112
QListView class, 141-146
database tables, displaying, 342
qm files, 245
QMainWindow class, 132
qmake, 379-383, 466
CONFIG line, options for, 381
with older versions of Qt, 380
project files, writing, 381, 418
QMap container class, 194
QMatrix class, 219
QMemArray container class, 193
QMenuBar class, 63
menus, programming, 121
QMenuData class, 63, 70
insertItem() and, 69
menus, programming, 121, 122
overloaded versions of, 69
portability and, 377
QMessageBox class, 71, 72, 159-161
rich text and, 264
QMovie class, 203-205
QMutex class, 363
QNPInstance class, 400
QNPlugin class, 400
QNPStream class, 401
QNPWidget class, 401
QObject class, 49, 51, 321
QPaintDevice class, portability and, 377
QPainter class, 60
QPainter drawing engine, 215-222
advanced features of, 217-222
drawing operations, methods for (list), 216
QPalette class, 214
QPicture class, 89
QPixmap class, 89, 98
double-buffering and, 223
load, 234
portability and, 378
save, 234
QPopupMenu class, 63, 69, 81
menus, programming, 121, 122
QPrinter class, 205-209
QProcess class, 288
QProgressBar class, 139
QProgressDialog class, 162
QPtrDict container class, 194, 195
QPtrList container class, 194
QPtrQueue container class, 195, 200
QPtrStack container class, 195, 200
QPtrVector container class, 195
QPushButton class, 107, 110
QRadioButton class, 108-110
QRegExp class, 252
escape sequences, 254
metacharacters, 252
QScrollBar class, 119
QScrollView class, 81, 119, 140
adding scrollbars to paint application and, 74
QServerSocket class, 384-389
QSettings class, 267-269
QSignalMapper class, 329
QSizeGrip class, 126
QSlider class, 114
QSocket class, 384-389
QSocketDevice class, 384
portability and, 378
QSocketNotifier class, 384
multithreading and, 367, 368
QSound class, 290
portability and, 378
QSpinBox class, 117, 118
validating user input and, 246
QSplitter class, 124
QSqlCursor class, 344, 359
QSqlDatabase class, 339, 340
QSqlDriver class, 360
QSqlForm class, 351
QSqlIndex class, 347
QSqlQuery class, 343, 358
QStatusBar class, 134
QStoredDrag class, 282
QString class, 98
QStringList container class, 195
Qt, 19-36
bugs in, 22
(see also Qt, troubleshooting)
C++ and, 34
compiling/installing, 26
smaller version, 26
configuring for multithreading, 363
editions of, 25
graphics and, 203-237
vs. Motif, 19
obtaining, 24, 25
older versions of, using qmake with, 380
reasons for using, 21
reference documentation for, 41-46
sound support in, 290
troubleshooting, 31
widgets, 39
Qt Canvas module, 228
Qt Designer, 164
adding custom slots, 439
connecting signals and slots, 438
connection tool, 456
help system, 470
preview mode, 430
slots tool, 457
source code, 460
starting, 421
startup screen, 421
test mode, 430
Qt Enterprise Edition, 25
accessing databases and, 336
Qt Free Edition, 25
Qt Network Extension, 389
Qt Non-Commercial Edition, 25
Qt Professional Edition, 25
Qt SQL module (see SQL module)
QTabBar class, 127
QTabDialog class, 127, 169-172
QTable class, 148-151
QTabWidget class, 127
QTextBrowser class, 151
online help and, 333
QTextEdit class, 127
drag-and-drop and, 279
QTextStream class, 267-269
QTextView class, 151
QThread class, 363
portability and, 378
QTime class, 284
QTimer class, multithreading and, 367
qt/include directory, 33
QToolBar class, 132
QToolbarButton class, 132
QToolTip class, 138
QTranslator object, 245
querySize method (QSqlDriver), 360
queues, 200
quick help (see tooltips)
QUrlOperator class, 389
QValidator class, 246-251
QValueList container class, 195
QValueStack container class, 195
QVariant class, 344
QVBox classes, implicit geometry management and, 183
QVBoxLayout class, 175
QVButtonGroup class, 124
implicit geometry management and, 184
QVGroupBox class, 124
implicit geometry management and, 184
QWaitCondition class, 365
qWarning method, 369
portability and, 375
QWhatsThis class, 139, 333
rich text and, 264
QWidget class, 45, 98, 294
implicit geometry management and, 183
multithreading and, 367
portability and, 378
QWidgetStack class, 126
QWMatrix class, viewport transformations, performing manually with, 220
QWorkspace class, 135
QXmlContentHandler class, 258
QXmlDefaultHandler class, 258
QXmlErrorHandler class, 258
QXtApplication class, 407
QXtWidget class, 407
QXtWidget method (QXtWidget), 407
R[ Top ]
radio buttons, 108-110, 429
raiseWidget method (QWidgetStack), 126
Raster Impage Processor (RIP) ghostscript, 205
rawName method (QFont), 377
readBlock method (QFile), 269
readBoolEntry (QSettings), 274
readDoubleEntry (QSettings), 274
readEntry (QSettings), 274
readLine method (QTextStream), 267
readLineStderr method (QProcess), 288
readLineStdout method (QProcess), 288
readListEntry (QSettings), 274
readNumEntry (QSettings), 274
readStderr method (QProcess), 288
readStdout method (QProcess), 288
red, green, blue color model, 211
reference documentation for Qt, 41-46
reference-based container classes, 196-200
refresh method
QDataTable, 348
QFileInfo, 273
regular expressions, 251-256
reject method (QDialog), 165
remove method
QFile, 269
QWhatsThis, 139
removeChild method (QScrollView), 140
removeColumn method (QDataTable), 349
removeEntry method (QSettings), 276
removeItem method
QGridView, 305
QMenuData, 121
removeLine method (QTextEdit), 128
removeSearchPath method (QSettings), 275
removeWidget method (QStatusBar), 135
repaint method, flicker effect and, 222
reparenting, 428
replaceChild method (QDomNode), 263
resizeContents method (QScrollView), 140
resizeEvent method (QWidget), 302
resizeGL method (QGLWidget), 396
resolve method (QLibrary), 286
resources for further reading
C++, 34
graphics programming, 217
GUI/UI design, 186
internationaliztion, 187
localization, 240
Perl, 408
regular expressions, 251
XML, 257
restoreOverrideCursor (QApplication), 237
return value, importance of checking, 37
returnPressed method
QListBoxItem, 112
QListViewItem, 145
RGB color model, 211
rich text, 264-266
widgets for displaying, 151
rightButtonClicked method
QListBoxItem, 112
QListViewItem, 145
rightButtonPressed method (QListBoxItem), 112
RIP (Raster Image Processor) ghostscript, 205
rotate method (QPixmap), 218
rotating graphics, 217
rows, widgets, laying out in, 176-178
RTTI (runtime type identification), not used by Qt, 35
run method (QThread), 363
running method (QMovie), 205
runtime type identification (RTTI), not used by Qt, 35
S[ Top ]
sample programs
courses database, 341-358
download client, 391
"Hello world", 37-41
HTTP server, 385
Netscape plug-in for rotating GIFs, 402
paint application, 55-62
PerlQt, 409-415
pizza example, 420, 425, 429, 436, 438, 445, 450, 453
Sierpinski Gasket, 397
save method (QPixmap), 89, 234
SAX (Simple API for XML), processing XML with, 258-260
Scalable Vector Graphics (SVG), 89
scaling graphics, 217
ScribbleWindow class, 58, 68
scrollbars, 119
creating, 74-81
scrollBy method (QScrollView), 81, 141
scrolled views, 140
search method (QString), 255
searchRev method (QString), 255
select method (QSqlCursor), 346
selection widgets, 110-114
selectionChanged method (QListView), 145
sendEvent method (QApplication), 323, 366
sendPostedEvents method (QApplication), 324
separator method (QDir), 271, 376
setAccel method (QMenuData), 121
setActive method (QPalette), 214
setActiveWindow method (QWidget), 378
setAlignment method
QGroupBox, 124
QLabel, 129
setAllColumnsShowFocus method (QListViewItem), 144
setApplyButton method (QTabDialog), 170
setAppropriate method (QWidget), 173
setArguments method (QProcess), 288
setAttributeNode method (QDomNode), 263
setAutoAdd method (QLayout), 184
setAutoClose method (QProgressBar), 163
setAutoDefault method (QPushButton), 108
setAutoEdit method (QDataTable), 349
setAutoReset method (QProgressBar), 163
setBackgroundMode method (QWidget), 222
setBinMode method (QLCDNumber), 131
setBlocking method (QSocketDevice), 378
setBrush method (QCanvasEllipse), 229
setBuddy method (QLabel), 129
setButtonSymbols (QSpinBox), 118
setButtonText method (QMessageBox), 161
setCaching method (QFileInfo), 273
setCancelButton method (QTabDialog), 170
setCaption method (QWidget), 98
setCellWidget (QTable), 150
setCentralWidget method (QMainWindow), 133
setChecked method (QCheckBox/QRadioButton), 108
setClipping method (QPainter), 222
setClipRect method (QPainter), 222
setClipRegion method (QPainter), 222
setCloseMode method (QDockWindow), 137
setColorSpec method (QApplication), 376
setColStretch method (layout managers), 181
setColumn method (QDataTable), 349
setColumnWidthMode method (QListViewItem), 144
setConfirmCancel method (QDataTable), 349
setConfirmDelete method (QDataTable), 349
setConfirmEdit method (QDataTable), 349
setConfirmInsert method (QDataTable), 349
setConfirmUpdate method (QDataTable), 349
setContentsPos method (QScrollView), 141
setContentsPreview method (QFileDialog), 155
setContentsPreviewEnabled method (QFileDialog), 155
setContext method (QGLWidget), 395
setCurrentTab method (QTabBar), 127
setCursorFlashTime method (QApplication), 376
setcustomColor method (QColorDialog), 157
setData method
QClipboard, 278
QIODevice, 259
setDatabaseName method (QSqlDatabase), 340
setDecMode method (QLCDNumber), 131
setDefault method (QPushButton), 108
setDefaultButton method (QTabDialog), 170
setDefaultOptimization method (QPixmap), 378
setDisabled method (QPalette), 214
setDoubleClickInterval method (QApplication), 376
setDragEnabled method (QListView), 146
setDropEnabled method (QListView), 146
setEnabled method
QAction, 330
QWidget, 104
setExclusive method (QButtonGroup), 124
setExtension method (QDialog), 168
setFalseText method (QDataTable), 349
setFilter method
QDir, 377
QDir class, 271
setFilterName method (QDir), 271
setFixedExtentHeight method (QDockWindow), 137
setFixedExtentWidth method (QDockWindow), 137
setFocus method (QFocusData), 320
setFont method (QWidget), 104, 264
setFormat method (QGLWidget), 395
setFrameStyle method (QFrame), 123
setFullPage method (QPrinter), 207
setGeometry method (QWidget), 45
setHelpButton method (QTabDialog), 170
setHexMode method (QLCDNumber), 131
setHorizontalStretchable method
QDockWindow, 137
QToolBar, 133
setHostName method (QSqlDatabase), 340
setHScrollBarMode method (QScrollView), 141
setIconPixmap method (QMessageBox), 161
setImage method (QClipboard), 278
setInactive method (QPalette), 214
setInfoPreview method (QFileDialog), 155
setInsertionPolicy method (QComboBox), 112
setItem method (QTable), 150
setItemEnabled method (QMenuData), 121
setLazyAlloc method (QColor), 210
setLineWidth method (QFrame), 123
setMainWidget method (QApplication), 376
setMargin method (QFrame), 123
setMatchAllDirs method (QDir), 271
setMatrix method (QWMatrix), 219
setMaximumSize method
QHBoxLayout, 177
QSplitter, 125
setMidLineWidth method (QFrame), 123
setMinimumDuration method (QProgressDialog), 162
setMinimumSize method
QHBoxLayout, 177
QSplitter, 125
setMode method (QLCDNumber), 131
setMovie method (QLabel), 129
setMovingEnabled method (QDockWindow), 137
setMultiSelection method (QListBox), 111
setName method (QFile), 268
setNotchesVisible method (QDial), 117
setNotchTarget method (QDial), 117
setNullText method (QDataTable), 349
setNumDigitits method (QLCDNumber), 131
setOctMode method (QLCDNumber), 131
setOKButton method (QTabDialog), 170
setOpaqueSize (QSplitter), 125
setOrientation method
QDialog, 168
QScrollBar, 120
QSplitter, 125
setOverrideCursor (QApplication), 237
setPalette method (QWidget), 104, 214
setPaper method (QTextView), 151
setPaperColorGroup method (QTextView), 151
setPassword method (QSqlDatabase), 340
setPixmap method
QClipboard, 278
QLabel, 129
QPushButton, 107
setPopup method (QPushButton), 108
setPrefix method (QSpinBox), 117
setProgress method
QProgressBar, 139
QProgressDialog, 162
setRange method (QScrollBar), 120
setReadOnly (QTextEdit), 128
setRecord method (QSqlForm), 351
setRenameEnabled method
QListView, 147
QListViewItem, 146
setResizeEnabled method (QDockWindow), 137
setResizeMode method (QSplitter), 125
setRightJustification method (QMainWindow), 133
setRootIsDecorated method (QListViewItem), 144
setRowStretch method (layout managers), 181
setSegmentStyle method (QLCDNumber), 131
setSelected method (QListViewItem), 144
setShape method (QTabBar), 127
setSizeIncrement method (QWidget), 378
setSocket method (QSocket), 387
setSorting method
QDir, 271
QIconView, 147
setSource method (QTextBrowser), 151
setSpecialValueText method (QSpinBox), 117
setSteps method (QScrollBar), 120
setStretchableWidget method (QToolBar), 133
setStyle method (QApplication), 105
setStyleSheet method (QTextView), 151
setSuffix method (QSpinBox), 117
setTabEnabled method
QTabBar, 127
QTabDialog, 170
setTabOrder method (QWidget), 319
setText method
QClipboard, 278
QLabel, 38, 129
QMessageBox, 161
QPushButton, 107
setTextFormat (QTextEdit), 128
setTextLabel method (QToolButton), 134
setTime_t method (QDateTime), 376
setTitle method (QGroupBox), 124
setToggleAction method (QAction), 331
setToggleButton method (QToolButton), 134
setTotalSteps method
QProgressBar, 139
QProgressDialog, 162
setTreeStepSize method (QListViewItem), 144
setTrueText method (QDataTable), 349
setup method (QPrinter), 205
setUrl method (QFileDialog), 156
setUserName method (QSqlDatabase), 340
setUsesBigPixmap method
QToolButton, 134
setUsesBigPixmaps method
QMainWindow, 133
setUsesTextLabel method (QToolButton), 134
setValue method
QScrollBar, 120
QSpinBox, 117
QSqlRecord, 359
setVerticallyStretchable method (QDockWindow), 137
setViewport method (QPainter), 220
setViewXForm method (QPainter), 221
setVScrollBarMode method (QScrollView), 141
setWidget method (QDockWindow), 137
setWorldForm method (QPainter), 220
setWorldMatrix method (QPainter), 219
shadow color, 213
shearing graphics, 217
shortDayName method (QDate/QTime/QDateTime), 285
shortMonthName method (QDate/QTime/QDateTime), 285
show method
QDialog, 164
QWorkspace, 135
showChild method (QScrollView), 140
showExtension method (QDialog), 168
showFullScreen method (QWidget), 379
showMaximized method (QWorkspace), 135
showNormal method (QWorkspace), 135
showTip method (QToolTipGroup), 138
Sierpinski Gasket program, 397
signal forwarding, 81
file I/O and, 97
signal-and-slot mechanism, 46-55
scrollbars and, 81
(see also signals; slots)
signals, 46-55, 456
advanced, 325-331
connecting to slots, 446
with Qt Designer, 438
signals method (Qt), 410
Simple API for XML (SAX), processing XML with, 258-260
size
of dialog boxes, 165
grips, 126
hints, 426
Size method (QDir), 271
sizeHint method
QCustomMenuItem, 122
QWidget, 294
sizePolicy method (QWidget), 294
sizePolicy property, 424
sliderMoved method
QScrollBar, 120
QSlider, 115
QWidget, 53
sliderPressed method (QScrollBar), 120
sliderReleased method (QScrollBar), 120
sliders, 114
slotAbout method
QMessageBox, 71
ScribbleWindow, 68
slotAboutQt method (ScribbleWindow), 68
slotColorMenu method (ScribbleWindow), 68, 80
slotIncomingData method
HTTPMirrorServer, 387
QSocket, 388
slotOperationFinished method (QUrlOperator), 393
slotProgress method (QUrlOperator), 393
slots, 46-55, 456
access specifiers, 458
adding custom, 439
advanced, 325-331
buttons, connecting several to one slot, 328
connecting to signals, 446
with Qt Designer, 438
creating custom, 457
return type, 459
slots method (Qt), 410
slots tool, 457
software (see Qt, obtaining)
sort method (QIconView), 147
sorting records, 346
sounds, playing, 290
source code, generating, 433
spacers, 453, 462
spin boxes, 117, 118
splitters, 124
SQL module, 336
installing, 338
support provided by, 337
transactions, 360
stacks, 200
Standard Template Library (STL), not use by Qt, 35
start method
QProcess, 288
QThread, 363
QTime, 284
startTimer method (QObject), 377
status bars, 132, 134
statusBar method (QMainWindow), 132
step method (QMovie), 204
stepDown method (QSpinBox), 118
stepUp method (QSpinBox), 118
STL (Standard Template Library), not used by Qt, 35
stop method
QSound, 291
QUrlOperator, 393
streamAsFile method (RotateGIFLoader), 405
stretch factors, 177
StrongFocus policy, 319
style method (QStyle), 312
styles, 232
stylesheets, 264
subclasses
implementation in, 441
naming schemes, 441
subclassing, 437
subkeyList method (QSettings), 276
sublayouts, 462
subwindows, 135
SVG (Scalable Vector Graphics), 89
synchronization (see multithreading, synchronization)
syncX method (QApplication), 376
synthetic events, 323
T[ Top ]
tab dialog boxes, 169-172
(see also wizards)
tab order, 319, 459-461
changing, 460
default, 459
TabFocus policy, 318
tables method (QSqlDatabase), 360
tabular material, 169
widgets for, 127, 148-151
tags, 264
tear-off menus, 122
templates, 35
temporary messages, 134
test mode, 430
testing your application, importance of, 186
text
color, 213
displaying (see labels)
files, reading, 267-269
processing, 238-266
rich, 264-266
widgets for displaying, 151
text-entry fields, 127
Time method (QDir), 271
time/date values
widgets for entering, 118
working with, 284
tip method (QToolTip), 138
toElement method (QDomNode), 261
toggle actions, 331
toolbars, 132
toolkits
callbacks and, 46
Java Swing, actions and, 330
tooltips, 132, 137-139
GUI design and, 188
as help for users, 332
toString method
QDate/QTime/QDateTime), 285
QDomDocument, 263
toStringList method (QSqlRecord), 360
transaction method (QSqlDatabase), 360
transformations, 217-221
view, 220
translating graphics (transformations), 217
translations (see localization)
traverse method (QFileInfo), 271
traversing directories, 270-272
Trolltech, obtaining Qt from, 24
troubleshooting Qt, 31
widgets, 39
(see also debugging)
two-dimensional transformations, 217-220
U[ Top ]
ui files, 431, 437
uic command, 433, 464
generating empty skeletons, 444, 465
options, 434, 444
undo
changes, 422
layouts, 450
Unix method (QSettings), 275
Unix systems
color management and, 211
configuring Qt for multitasking on, 363
database drivers, specifying, 338
debugging and, 371
drag-and-drop and, 279
GUI toolkits and, 19
installing Qt or Qt/Embedded on, 26-32
Motif and, 19
printing and, 205
Qt on, 406
signals and, 328
unlock method
QApplication, 367
QMutex, 364
Unsorted method (QDir), 271
update method (QSqlCursor), 359
updateCell method (QWidget), 314
updateItem method (QMenuData), 121
URLs
GUI/UI design, 186
KDE, 36
Qt, obtaining from Trolltech, 24
RIP ghostscript, 205
users
providing help for, 332-335
validating input of, 246-251
utilities
lrelease, 245, 246
lupdate, 242, 246
V[ Top ]
validate method (QValidator), 251
validating parsers, 257
validators, 113
validity, XML and, 257
value method
QSlider, 115
QSpinBox, 117
QSqlQuery, 343
value-based container classes, 200-202
valueChanged method
QScrollBar, 120
QSlider, 115
QSpinBox, 118
variables
custom widgets and, 294
multithreading and, 362
VerPattern constant (QBrush), 216
view transformations, 220
viewport transformations, 220
views (see icon views; list views; scroll views)
virtual functions, 34
Visual C++ IDE, 416-419
creating projects, 417
with qmake, 418
makefiles, importing, 416
Visual Studio integration, 418
Visual Studio integration, 418
W[ Top ]
wait method (QWaitCondition), 365
wakeAll method (QWaitCondition), 365
wakeOne method (QWaitCondition), 365
warning
dialog boxes, 160
messages, 369
warning method (QMessageBox), 161
well-formedness, XML and, 257
What's This windows, 137-139
as help for users, 333
whatsThisButton method (QWhatsThis), 139, 333
WheelFocus policy, 319
widget classes, 100
widget flags, 312
widget hierarchy, 428
widget stacks, 126
widgets, 38, 100-152
adding to forms, 425
for bounded-range input, 114-118
date/time values, 118
for buttons, 107-110
columns, laying out in, 176-178
connecting, 446
constructors for, 104
custom, 293-317, 472-474
caution with, 293
using on forms, 361
for displaying rich text, 151
enabled/disabled, 104
for entering date/time values, 118
GUI design and, 187, 189-191
initializing the state, 445
for labels, 129-152
menu-related, 121, 122
Office suite interface (Microsoft) components, resembling, 132-139
parameters for, 104
properties of, 106
resizing, portability and, 376
rows, laying out in, 176-178
scrollable, 74
selection, 110-114
signals emitted by, 48
size of, adjusting, 426
styles of, 105, 106
tab-related, 127, 148-151
window transformations, 220
windowActivated method (QWorkspace), 136
windowList method (QWorkspace), 136
windows
docking, 136
subwindows and, 135
What's This, 137-139
Windows method (QSettings), 275
Windows systems
color management and, 211
database drivers, specifying, 338
GUI design and, 188
installing Qt on, 33
printing and, 205
winId method (QWidget), 379
wizards, 172
world transformations (see view transformations)
writeBlock method (QFile), 269
writeEntry method (QSettings), 274
X[ Top ]
x11Display method (QPaintDevice), 377
XDND drag-and-drop protocol, 279
xFormDev method (QPainter), 218
XML
files, reading/writing, 256-264
processing with DOM, 260
processing with SAX, 258
well-formedness and, 257
Xt widgets, integrating, 406
Zurück zu Programming with Qt