Tcl/Tk :: a developer's guide /
Newly updated with over 150 pages of material on the latest Tcl extensions, Tcl/Tk: A Developer's Guide is a unique practical tutorial for professional programmers and beginners alike. Starting with a clear picture of the basics, Tcl/Tk covers the variety of tools in this "Swiss army knife...
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Elektronisch E-Book |
Sprache: | English |
Veröffentlicht: |
Waltham, Mass. :
Elsevier,
2012.
|
Ausgabe: | 3rd ed. |
Schriftenreihe: | Morgan Kaufmann Series in Software Engineering and Programming.
|
Schlagworte: | |
Online-Zugang: | Volltext |
Zusammenfassung: | Newly updated with over 150 pages of material on the latest Tcl extensions, Tcl/Tk: A Developer's Guide is a unique practical tutorial for professional programmers and beginners alike. Starting with a clear picture of the basics, Tcl/Tk covers the variety of tools in this "Swiss army knife" of programming languages, giving you the ability to enhance your programs, extend your application's capabilities, and become a more effective programmer. This updated edition covers all of the new features of version 8.6, including object-oriented programming and the creation of megawidgets, existing data structure implementations, themed widgets and virtual events. Extensive code snippets and online tutorials in various languages will give you a firm grasp on how to use the Tcl/Tk libraries and interpreters and, most importantly, on what constitutes an effective strategy for using Tcl/Tk. Includes the latest features of Tcl/Tk 8.6 Covers Tcl development tools, popular extensions, and packages to allow developers to solve real-world problems with Tcl/Tk immediately Provides straightforward explanations for beginners and offers tips, style guidelines, and debugging techniques for advanced users Companion website includes Tcl/Tk tutorials, applications, distributions, and more tools. |
Beschreibung: | Includes index. Machine generated contents note: Chapter 1: Tcl/Tk Features Chapter 2: The Mechanics of Using the Tcl and Tk Interpreters Chapter 3: Introduction to the Tcl Language Chapter 4: File System, Disk I/O and Sockets Chapter 5: Using Strings and Lists Chapter 6: Basic list, array and dict Chapter 7: Advanced List, array and dict Chapter 8: Procedure Techniques Chapter 9: Namespaces Chapter 10: Basic TclOO Chapter 11: Advanced TclOO Chapter 12: Packages and modules Chapter 13: Introduction to Tk Graphics Chapter 14: Overview of the canvas Widget Chapter 15: The text widget and htmllib Chapter 16: Themed Widgets Chapter 17: Tk Megawidgets Chapter 18: Writing a Tcl Extension Chapter 19: Extensions and Packages Chapter 20: Programming Tools Chapter 21: Debugging and Optimization techniques Chapter 22: Tips and Techniques. |
Beschreibung: | 1 online resource (xxiv, 792 pages) : illustrations (some color). |
ISBN: | 9780123847188 0123847184 1283447894 9781283447898 9786613447890 6613447897 |
Internformat
MARC
LEADER | 00000cam a2200000Ma 4500 | ||
---|---|---|---|
001 | ZDB-4-EBA-ocn785776828 | ||
003 | OCoLC | ||
005 | 20241004212047.0 | ||
006 | m o d | ||
007 | cr cn||||||||| | ||
008 | 111003s2012 maua o 001 0 eng d | ||
010 | |z 2011038927 | ||
040 | |a E7B |b eng |e pn |c E7B |d OCLCQ |d N$T |d OCLCQ |d DEBSZ |d YDXCP |d OCLCQ |d OCLCF |d OCLCQ |d LOA |d ICA |d LVT |d AGLDB |d K6U |d PIFAG |d FVL |d U3W |d COCUF |d D6H |d STF |d WRM |d OCLCQ |d VTS |d INT |d OCLCQ |d A6Q |d VT2 |d C6I |d UKCRE |d VLY |d QGK |d OCLCO |d OCLCQ |d OCLCO |d OCLCL | ||
019 | |a 781539194 |a 962188889 |a 991956639 |a 1037763411 |a 1038700340 |a 1083563444 |a 1103281338 |a 1153487259 |a 1162062505 |a 1202554739 |a 1240509687 |a 1241762464 |a 1295600084 |a 1300684611 | ||
020 | |a 9780123847188 |q (electronic bk.) | ||
020 | |a 0123847184 |q (electronic bk.) | ||
020 | |z 9780123847171 |q (pbk.) | ||
020 | |a 1283447894 | ||
020 | |a 9781283447898 | ||
020 | |a 9786613447890 | ||
020 | |a 6613447897 | ||
035 | |a (OCoLC)785776828 |z (OCoLC)781539194 |z (OCoLC)962188889 |z (OCoLC)991956639 |z (OCoLC)1037763411 |z (OCoLC)1038700340 |z (OCoLC)1083563444 |z (OCoLC)1103281338 |z (OCoLC)1153487259 |z (OCoLC)1162062505 |z (OCoLC)1202554739 |z (OCoLC)1240509687 |z (OCoLC)1241762464 |z (OCoLC)1295600084 |z (OCoLC)1300684611 | ||
050 | 4 | |a QA76.73.T44 |b F55 2012eb | |
072 | 7 | |a COM |x 051260 |2 bisacsh | |
072 | 7 | |a COM |x 051420 |2 bisacsh | |
082 | 7 | |a 005.2/762 |2 23 | |
049 | |a MAIN | ||
100 | 1 | |a Flynt, Clif. | |
245 | 1 | 0 | |a Tcl/Tk : |b a developer's guide / |c Clif Flynt. |
250 | |a 3rd ed. | ||
260 | |a Waltham, Mass. : |b Elsevier, |c 2012. | ||
300 | |a 1 online resource (xxiv, 792 pages) : |b illustrations (some color). | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
347 | |a text file | ||
490 | 1 | |a The Morgan Kaufmann series in software engineering and programming | |
500 | |a Includes index. | ||
500 | |a Machine generated contents note: Chapter 1: Tcl/Tk Features Chapter 2: The Mechanics of Using the Tcl and Tk Interpreters Chapter 3: Introduction to the Tcl Language Chapter 4: File System, Disk I/O and Sockets Chapter 5: Using Strings and Lists Chapter 6: Basic list, array and dict Chapter 7: Advanced List, array and dict Chapter 8: Procedure Techniques Chapter 9: Namespaces Chapter 10: Basic TclOO Chapter 11: Advanced TclOO Chapter 12: Packages and modules Chapter 13: Introduction to Tk Graphics Chapter 14: Overview of the canvas Widget Chapter 15: The text widget and htmllib Chapter 16: Themed Widgets Chapter 17: Tk Megawidgets Chapter 18: Writing a Tcl Extension Chapter 19: Extensions and Packages Chapter 20: Programming Tools Chapter 21: Debugging and Optimization techniques Chapter 22: Tips and Techniques. | ||
505 | 0 | |a Front Cover -- Tcl/Tk: A Developer's Guide -- Copyright -- Table of Contents -- Foreword -- Preface -- Tcl/Tk: GUI Programming in a Gooey World -- Acknowledgments -- Introduction -- Where to Get More Information -- 1 Tcl/Tk Features -- 1.1 Tcl Overview -- 1.1.1 The Standard Tcl Distribution -- 1.1.2 Documentation -- 1.2 Tcl as a Glue Language -- 1.2.1 Tcl Scripts Compared with UNIX Shell Scripts -- 1.2.2 Tcl Scripts Compared with MS-DOS .bat Files -- 1.3 Tcl as a General-purpose Interpreter -- 1.3.1 Tcl/Tk Compared to Visual Basic -- 1.3.2 Tcl/Tk Compared to Perl -- 1.3.3 Tcl/Tk Compared to Python -- 1.3.4 Tcl/Tk Compared to Java -- 1.4 Tcl as an Extensible Interpreter -- 1.5 Tcl as an Embeddable Interpreter -- 1.6 Tcl as a Rapid Development Tool -- 1.7 GUI-based Programming -- 1.8 Shipping Products -- 1.9 Bottom Line -- 1.10 Problems -- 2 The Mechanics of Using the Tcl and Tk Interpreters -- 2.1 The tclsh and wish Interpreters -- 2.1.1 Starting the tclsh and wish Interpreters -- 2.1.2 Starting tclsh or wish under UNIX -- Errors Caused by Improper Installation -- 2.1.3 Starting tclsh or wish under Microsoft Windows -- 2.1.4 Starting tclsh or wish on the Mac -- Making a Desktop Icon -- 2.1.5 Exiting tclsh or wish -- 2.2 Using tclsh/wish Interactively -- 2.2.1 Tclsh as a Command Shell -- 2.2.2 Tk Console (tkcon)-An Alternative Interactive tclsh/wish Shell -- 2.2.3 Evaluating Scripts Interactively -- 2.3 Evaluating Tcl Script Files -- 2.3.1 The Tcl Script File -- 2.3.2 Evaluating Tcl Script Files -- 2.3.3 Evaluating a Tcl Script File under UNIX -- 2.3.4 Evaluating a Tcl Script File under Microsoft Windows -- Changing File Association on Windows XP and Earlier -- Changing File Association on Windows Vista and Windows 7 -- 2.3.5 Evaluating a Tcl Script on the Mac -- 2.4 Bottom Line -- 2.5 Problems -- 3 Introduction to the Tcl Language. | |
505 | 8 | |a 3.1 Overview of the Basics -- 3.1.1 Syntax -- 3.1.2 Grouping Words -- 3.1.3 Comments -- 3.1.4 Data Representation -- 3.1.5 Command Results -- 3.1.6 Errors -- 3.2 Command Evaluation and Substitutions -- 3.2.1 Substitution -- 3.2.2 Controlling Substitutions with Quotes, Curly Braces, and the Backslash -- Splitting Lists -- 3.2.3 Steps in Command Evaluation -- 3.3 Data Types -- 3.3.1 Assigning Values to Variables -- 3.3.2 Strings -- 3.3.3 String Processing Commands -- String and Format Command Examples -- 3.3.4 Lists -- 3.3.5 List Processing Commands -- 3.3.6 Dictionaries -- 3.3.7 Associative Arrays -- 3.3.8 Associative Array Commands -- 3.3.9 Binary Data -- 3.3.10 Handles -- 3.4 Arithmetic and Boolean Operations -- 3.4.1 Math Operations -- Trigonometric Functions -- Exponential Functions -- Conversion Functions -- Random Numbers -- 3.4.2 Conditionals -- The if Command -- The switch Command -- 3.4.3 Looping -- The for Command -- The while Command -- The foreach Command -- 3.4.4 Exception Handling in Tcl -- 3.5 Modularization -- 3.5.1 Procedures -- 3.5.2 Loading Code from a Script File -- 3.5.3 Examining the State of the Tcl Interpreter -- 3.6 Bottom Line -- 3.7 Problems -- 4 Navigating the File System, Basic I/O and Sockets -- 4.1 Navigating the File System -- 4.1.1 Constructing File Paths -- 4.2 Properties of File System Items -- 4.3 Removing Files -- 4.4 Input/Output in TCL -- 4.4.1 Output -- 4.4.2 Input -- 4.4.3 Creating a Channel -- 4.4.4 Closing Channels -- 4.5 Sockets -- 4.5.1 Using a Client Socket -- 4.5.2 Controlling Data Flow -- 4.5.3 Server Sockets -- 4.6 Bottom Line -- 4.7 Problems -- 5 Using Strings and Lists -- 5.1 Converting a String into a List -- 5.2 Examining the List with a for Loop -- 5.3 Using the foreach Command -- 5.4 Using string match Instead of string first -- 5.5 Using lsearch -- 5.6 The regexp Command. | |
505 | 8 | |a 5.6.1 Regular Expression Matching Rules -- Basic Regular Expression Rules -- 5.6.2 Examples of Regular Expressions -- 5.6.3 Advanced and Extended Regular Expression Rules -- Minimum and Maximum Match -- Internationalization -- Non-ASCII Values -- Character Classes, Collating Elements, and Equivalence Classes -- Tcl Commands Implementing Regular Expressions -- 5.6.4 Back to the Searching URLs -- 5.7 Creating a Procedure -- 5.7.1 The proc Command -- 5.7.2 A findUrl Procedure -- 5.7.3 Variable Scope -- 5.7.4 Global Information Variables -- 5.8 Making a Script -- 5.8.1 The Executable Script -- 5.9 Speed -- 5.9.1 Comparison of Execution Speeds (Linux Celeron @ 2.6 GHz) -- 5.10 Bottom Line -- 5.11 Problems -- 6 Complex Data Structures with Lists, Arrays and Dicts -- 6.1 Using the Tcl List -- 6.1.1 Manipulating Ordered Data with Lists -- 6.1.2 Manipulating Data with Keyed Lists -- 6.2 Using the Dict -- 6.2.1 Grouping Related Values -- 6.3 Using the Associative Array -- 6.4 Trees in Tcl -- 6.5 Tcl and SQL -- 6.5.1 SQL Basics -- 6.5.2 Using tdbc -- Manipulating Data -- 6.5.3 Using Referenced Tables -- Introspection into Databases -- 6.6 Performance -- 6.7 Bottom Line -- 6.8 Problems -- 7 Procedure Techniques -- 7.1 Arguments to Procedures -- 7.1.1 Variable Number of Arguments to a Procedure -- 7.1.2 Default Values for Procedure Arguments -- 7.2 Renaming or Deleting Commands -- 7.3 Getting Information About Procedures -- 7.4 Substitution and Evaluation of Strings -- 7.4.1 Performing Variable Substitution on a String -- 7.4.2 Evaluating a String as a Tcl Command -- 7.5 Working with Global and Local Scopes -- 7.5.1 Global and Local Scope -- 7.6 Making a Tcl Object -- 7.6.1 An Object Example -- 7.7 Bottom Line -- 7.8 Problems -- 8 Namespaces, Packages and Modules -- 8.1 Namespaces and Scoping Rules -- 8.1.1 Namespace Scope -- 8.1.2 Namespace Naming Rules. | |
505 | 8 | |a 8.1.3 Accessing Namespace Entities -- 8.1.4 Why Use Namespaces? -- 8.1.5 The namespace and variable Commands -- 8.1.6 Creating and Populating a Namespace -- 8.1.7 Namespace Nesting -- 8.1.8 Namespace Ensembles -- 8.2 Packages -- 8.2.1 How Packages Work -- 8.2.2 Internal Details: Files and Variables Used with Packages -- 8.2.3 Package Commands -- 8.2.4 Version Numbers -- 8.2.5 Package Cookbook -- Creating a Package -- Using a Tcl Package -- 8.3 TCL Modules -- 8.4 Namespaces and Packages -- 8.5 Hanoi with a Stack Namespace and Package -- 8.6 Conventions and Caveats -- 8.7 Bottom Line -- 8.8 Problems -- 9 Basic Object-Oriented Programming in Tcl -- 9.1 Creating a TclOO Class and Object -- 9.1.1 Constructor and Destructor -- 9.1.2 Methods -- Method Naming Convention -- Invoking Methods from Within Methods -- Registering Methods for Callbacks -- 9.1.3 Inheritance -- Method Chaining -- Inheritance -- Single Inheritance -- Multiple Inheritance -- Using Mixins -- Aggregation -- 9.1.4 Filters -- 9.2 Bottom Line -- 9.3 Problems -- 10 Advanced Object-Oriented Programming in Tcl -- 10.1 Modifying Classes and Objects -- 10.1.1 Modifying Classes -- Modifying Methods -- 10.1.2 Modifying Inheritance -- Adding a Superclass -- Mixing in a New Class -- 10.1.3 Modifying Class, Constructor, Variables and Destructor -- 10.1.4 Static Methods and Variables I -- 10.2 Modifying Objects -- 10.2.1 Changing an Object's Class -- 10.2.2 Defining Per-object Mixins -- 10.2.3 Adding a Method to an Object -- 10.3 Examining Classes and Objects -- 10.3.1 Evaluation of Chains -- 10.3.2 Examining Methods -- 10.3.3 Examining Inheritance -- 10.3.4 Getting a List of Base Classes -- 10.4 Examining Objects -- 10.5 Using TclOO with Callbacks -- 10.6 Adding New Functionality to TclOO -- 10.6.1 Static Variables II -- 10.6.2 Static Methods II -- 10.6.3 Aggregated Objects That Modify the Possessor. | |
505 | 8 | |a 10.6.4 Objects That Grow and Change -- 10.7 Bottom Line -- 10.8 Problems -- 11 Introduction to Tk Graphics -- 11.1 Creating a Widget -- 11.2 Conventions -- 11.2.1 Widget Naming Conventions -- 11.2.2 Color Naming Conventions -- 11.2.3 Dimension Conventions -- 11.3 Common Options -- 11.4 Determining and Setting Options -- 11.5 The Basic Widgets -- 11.6 Introducing Widgets: label, button, and entry -- 11.6.1 The label Widget -- 11.6.2 The button Widget -- 11.6.3 The entry Widget -- 11.6.4 Using Namespaces or TclOO with Widgets -- Using Namespace Scope with a Widget -- Using TclOO with a Widget -- 11.7 Application Layout: Geometry Managers and Container Widgets -- 11.7.1 Container Widgets: frame, labelframe, panedwindow -- The frame Widget -- The labelframe Widget -- The ttk::notebook Widget -- The panedwindow Widget -- 11.7.2 Widget Layout: place, pack, and grid -- The place Layout Manager -- The pack Layout Manager -- The grid Layout Manager -- Working Together -- 11.8 Selection Widgets: radiobutton, checkbutton, menu, and listbox -- 11.8.1 radiobutton and checkbutton -- radiobutton -- checkbutton -- 11.8.2 Pull-down Menus: menu, menubutton, and Menubars -- Menubars -- 11.8.3 Selection Widgets: listbox -- 11.9 Scrollbar -- 11.9.1 The Basic scrollbar -- 11.9.2 scrollbar Details -- 11.9.3 Intercepting scrollbar Commands -- 11.10 The scale Widget -- 11.11 New Windows -- 11.12 Interacting with the Event Loop -- 11.13 Scheduling the Future: after -- 11.13.1 Canceling the Future -- 11.14 Bottom Line -- 11.15 Problems -- 12 Using the canvas Widget -- 12.1 Overview of the canvas Widget -- 12.1.1 Identifiers and Tags -- 12.1.2 Coordinates -- 12.1.3 Binding -- 12.2 Creating a canvas Widget -- 12.3 Creating Displayable canvas Items -- 12.3.1 The Line Item -- 12.3.2 The Arc Item -- 12.3.3 The Rectangle Item -- 12.3.4 The Oval Item -- 12.3.5 The Polygon Item. | |
520 | |a Newly updated with over 150 pages of material on the latest Tcl extensions, Tcl/Tk: A Developer's Guide is a unique practical tutorial for professional programmers and beginners alike. Starting with a clear picture of the basics, Tcl/Tk covers the variety of tools in this "Swiss army knife" of programming languages, giving you the ability to enhance your programs, extend your application's capabilities, and become a more effective programmer. This updated edition covers all of the new features of version 8.6, including object-oriented programming and the creation of megawidgets, existing data structure implementations, themed widgets and virtual events. Extensive code snippets and online tutorials in various languages will give you a firm grasp on how to use the Tcl/Tk libraries and interpreters and, most importantly, on what constitutes an effective strategy for using Tcl/Tk. Includes the latest features of Tcl/Tk 8.6 Covers Tcl development tools, popular extensions, and packages to allow developers to solve real-world problems with Tcl/Tk immediately Provides straightforward explanations for beginners and offers tips, style guidelines, and debugging techniques for advanced users Companion website includes Tcl/Tk tutorials, applications, distributions, and more tools. | ||
546 | |a English. | ||
630 | 0 | 0 | |a Tk toolkit. |0 http://id.loc.gov/authorities/names/n94001650 |
630 | 0 | 7 | |a Tk toolkit |2 fast |
650 | 0 | |a Tcl (Computer program language) |0 http://id.loc.gov/authorities/subjects/sh94000154 | |
650 | 6 | |a Tcl (Langage de programmation) | |
650 | 7 | |a COMPUTERS |x Programming Languages |x JavaScript. |2 bisacsh | |
650 | 7 | |a COMPUTERS |x Programming Languages |x VBScript. |2 bisacsh | |
650 | 7 | |a Tcl (Computer program language) |2 fast | |
758 | |i has work: |a Tcl/Tk (Text) |1 https://id.oclc.org/worldcat/entity/E39PCFHtcqqDvYcCxqk3WK6qcP |4 https://id.oclc.org/worldcat/ontology/hasWork | ||
776 | 0 | 8 | |i Print version: |a Flynt, Clif. |t Tcl/Tk. |b 3rd ed. |d Waltham, Mass. : Elsevier, 2012 |w (DLC) 2011038927 |
830 | 0 | |a Morgan Kaufmann Series in Software Engineering and Programming. | |
856 | 4 | 0 | |l FWS01 |p ZDB-4-EBA |q FWS_PDA_EBA |u https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=453796 |3 Volltext |
938 | |a ebrary |b EBRY |n ebr10528206 | ||
938 | |a EBSCOhost |b EBSC |n 453796 | ||
938 | |a YBP Library Services |b YANK |n 7408672 | ||
994 | |a 92 |b GEBAY | ||
912 | |a ZDB-4-EBA | ||
049 | |a DE-863 |
Datensatz im Suchindex
DE-BY-FWS_katkey | ZDB-4-EBA-ocn785776828 |
---|---|
_version_ | 1816881791605145600 |
adam_text | |
any_adam_object | |
author | Flynt, Clif |
author_facet | Flynt, Clif |
author_role | |
author_sort | Flynt, Clif |
author_variant | c f cf |
building | Verbundindex |
bvnumber | localFWS |
callnumber-first | Q - Science |
callnumber-label | QA76 |
callnumber-raw | QA76.73.T44 F55 2012eb |
callnumber-search | QA76.73.T44 F55 2012eb |
callnumber-sort | QA 276.73 T44 F55 42012EB |
callnumber-subject | QA - Mathematics |
collection | ZDB-4-EBA |
contents | Front Cover -- Tcl/Tk: A Developer's Guide -- Copyright -- Table of Contents -- Foreword -- Preface -- Tcl/Tk: GUI Programming in a Gooey World -- Acknowledgments -- Introduction -- Where to Get More Information -- 1 Tcl/Tk Features -- 1.1 Tcl Overview -- 1.1.1 The Standard Tcl Distribution -- 1.1.2 Documentation -- 1.2 Tcl as a Glue Language -- 1.2.1 Tcl Scripts Compared with UNIX Shell Scripts -- 1.2.2 Tcl Scripts Compared with MS-DOS .bat Files -- 1.3 Tcl as a General-purpose Interpreter -- 1.3.1 Tcl/Tk Compared to Visual Basic -- 1.3.2 Tcl/Tk Compared to Perl -- 1.3.3 Tcl/Tk Compared to Python -- 1.3.4 Tcl/Tk Compared to Java -- 1.4 Tcl as an Extensible Interpreter -- 1.5 Tcl as an Embeddable Interpreter -- 1.6 Tcl as a Rapid Development Tool -- 1.7 GUI-based Programming -- 1.8 Shipping Products -- 1.9 Bottom Line -- 1.10 Problems -- 2 The Mechanics of Using the Tcl and Tk Interpreters -- 2.1 The tclsh and wish Interpreters -- 2.1.1 Starting the tclsh and wish Interpreters -- 2.1.2 Starting tclsh or wish under UNIX -- Errors Caused by Improper Installation -- 2.1.3 Starting tclsh or wish under Microsoft Windows -- 2.1.4 Starting tclsh or wish on the Mac -- Making a Desktop Icon -- 2.1.5 Exiting tclsh or wish -- 2.2 Using tclsh/wish Interactively -- 2.2.1 Tclsh as a Command Shell -- 2.2.2 Tk Console (tkcon)-An Alternative Interactive tclsh/wish Shell -- 2.2.3 Evaluating Scripts Interactively -- 2.3 Evaluating Tcl Script Files -- 2.3.1 The Tcl Script File -- 2.3.2 Evaluating Tcl Script Files -- 2.3.3 Evaluating a Tcl Script File under UNIX -- 2.3.4 Evaluating a Tcl Script File under Microsoft Windows -- Changing File Association on Windows XP and Earlier -- Changing File Association on Windows Vista and Windows 7 -- 2.3.5 Evaluating a Tcl Script on the Mac -- 2.4 Bottom Line -- 2.5 Problems -- 3 Introduction to the Tcl Language. 3.1 Overview of the Basics -- 3.1.1 Syntax -- 3.1.2 Grouping Words -- 3.1.3 Comments -- 3.1.4 Data Representation -- 3.1.5 Command Results -- 3.1.6 Errors -- 3.2 Command Evaluation and Substitutions -- 3.2.1 Substitution -- 3.2.2 Controlling Substitutions with Quotes, Curly Braces, and the Backslash -- Splitting Lists -- 3.2.3 Steps in Command Evaluation -- 3.3 Data Types -- 3.3.1 Assigning Values to Variables -- 3.3.2 Strings -- 3.3.3 String Processing Commands -- String and Format Command Examples -- 3.3.4 Lists -- 3.3.5 List Processing Commands -- 3.3.6 Dictionaries -- 3.3.7 Associative Arrays -- 3.3.8 Associative Array Commands -- 3.3.9 Binary Data -- 3.3.10 Handles -- 3.4 Arithmetic and Boolean Operations -- 3.4.1 Math Operations -- Trigonometric Functions -- Exponential Functions -- Conversion Functions -- Random Numbers -- 3.4.2 Conditionals -- The if Command -- The switch Command -- 3.4.3 Looping -- The for Command -- The while Command -- The foreach Command -- 3.4.4 Exception Handling in Tcl -- 3.5 Modularization -- 3.5.1 Procedures -- 3.5.2 Loading Code from a Script File -- 3.5.3 Examining the State of the Tcl Interpreter -- 3.6 Bottom Line -- 3.7 Problems -- 4 Navigating the File System, Basic I/O and Sockets -- 4.1 Navigating the File System -- 4.1.1 Constructing File Paths -- 4.2 Properties of File System Items -- 4.3 Removing Files -- 4.4 Input/Output in TCL -- 4.4.1 Output -- 4.4.2 Input -- 4.4.3 Creating a Channel -- 4.4.4 Closing Channels -- 4.5 Sockets -- 4.5.1 Using a Client Socket -- 4.5.2 Controlling Data Flow -- 4.5.3 Server Sockets -- 4.6 Bottom Line -- 4.7 Problems -- 5 Using Strings and Lists -- 5.1 Converting a String into a List -- 5.2 Examining the List with a for Loop -- 5.3 Using the foreach Command -- 5.4 Using string match Instead of string first -- 5.5 Using lsearch -- 5.6 The regexp Command. 5.6.1 Regular Expression Matching Rules -- Basic Regular Expression Rules -- 5.6.2 Examples of Regular Expressions -- 5.6.3 Advanced and Extended Regular Expression Rules -- Minimum and Maximum Match -- Internationalization -- Non-ASCII Values -- Character Classes, Collating Elements, and Equivalence Classes -- Tcl Commands Implementing Regular Expressions -- 5.6.4 Back to the Searching URLs -- 5.7 Creating a Procedure -- 5.7.1 The proc Command -- 5.7.2 A findUrl Procedure -- 5.7.3 Variable Scope -- 5.7.4 Global Information Variables -- 5.8 Making a Script -- 5.8.1 The Executable Script -- 5.9 Speed -- 5.9.1 Comparison of Execution Speeds (Linux Celeron @ 2.6 GHz) -- 5.10 Bottom Line -- 5.11 Problems -- 6 Complex Data Structures with Lists, Arrays and Dicts -- 6.1 Using the Tcl List -- 6.1.1 Manipulating Ordered Data with Lists -- 6.1.2 Manipulating Data with Keyed Lists -- 6.2 Using the Dict -- 6.2.1 Grouping Related Values -- 6.3 Using the Associative Array -- 6.4 Trees in Tcl -- 6.5 Tcl and SQL -- 6.5.1 SQL Basics -- 6.5.2 Using tdbc -- Manipulating Data -- 6.5.3 Using Referenced Tables -- Introspection into Databases -- 6.6 Performance -- 6.7 Bottom Line -- 6.8 Problems -- 7 Procedure Techniques -- 7.1 Arguments to Procedures -- 7.1.1 Variable Number of Arguments to a Procedure -- 7.1.2 Default Values for Procedure Arguments -- 7.2 Renaming or Deleting Commands -- 7.3 Getting Information About Procedures -- 7.4 Substitution and Evaluation of Strings -- 7.4.1 Performing Variable Substitution on a String -- 7.4.2 Evaluating a String as a Tcl Command -- 7.5 Working with Global and Local Scopes -- 7.5.1 Global and Local Scope -- 7.6 Making a Tcl Object -- 7.6.1 An Object Example -- 7.7 Bottom Line -- 7.8 Problems -- 8 Namespaces, Packages and Modules -- 8.1 Namespaces and Scoping Rules -- 8.1.1 Namespace Scope -- 8.1.2 Namespace Naming Rules. 8.1.3 Accessing Namespace Entities -- 8.1.4 Why Use Namespaces? -- 8.1.5 The namespace and variable Commands -- 8.1.6 Creating and Populating a Namespace -- 8.1.7 Namespace Nesting -- 8.1.8 Namespace Ensembles -- 8.2 Packages -- 8.2.1 How Packages Work -- 8.2.2 Internal Details: Files and Variables Used with Packages -- 8.2.3 Package Commands -- 8.2.4 Version Numbers -- 8.2.5 Package Cookbook -- Creating a Package -- Using a Tcl Package -- 8.3 TCL Modules -- 8.4 Namespaces and Packages -- 8.5 Hanoi with a Stack Namespace and Package -- 8.6 Conventions and Caveats -- 8.7 Bottom Line -- 8.8 Problems -- 9 Basic Object-Oriented Programming in Tcl -- 9.1 Creating a TclOO Class and Object -- 9.1.1 Constructor and Destructor -- 9.1.2 Methods -- Method Naming Convention -- Invoking Methods from Within Methods -- Registering Methods for Callbacks -- 9.1.3 Inheritance -- Method Chaining -- Inheritance -- Single Inheritance -- Multiple Inheritance -- Using Mixins -- Aggregation -- 9.1.4 Filters -- 9.2 Bottom Line -- 9.3 Problems -- 10 Advanced Object-Oriented Programming in Tcl -- 10.1 Modifying Classes and Objects -- 10.1.1 Modifying Classes -- Modifying Methods -- 10.1.2 Modifying Inheritance -- Adding a Superclass -- Mixing in a New Class -- 10.1.3 Modifying Class, Constructor, Variables and Destructor -- 10.1.4 Static Methods and Variables I -- 10.2 Modifying Objects -- 10.2.1 Changing an Object's Class -- 10.2.2 Defining Per-object Mixins -- 10.2.3 Adding a Method to an Object -- 10.3 Examining Classes and Objects -- 10.3.1 Evaluation of Chains -- 10.3.2 Examining Methods -- 10.3.3 Examining Inheritance -- 10.3.4 Getting a List of Base Classes -- 10.4 Examining Objects -- 10.5 Using TclOO with Callbacks -- 10.6 Adding New Functionality to TclOO -- 10.6.1 Static Variables II -- 10.6.2 Static Methods II -- 10.6.3 Aggregated Objects That Modify the Possessor. 10.6.4 Objects That Grow and Change -- 10.7 Bottom Line -- 10.8 Problems -- 11 Introduction to Tk Graphics -- 11.1 Creating a Widget -- 11.2 Conventions -- 11.2.1 Widget Naming Conventions -- 11.2.2 Color Naming Conventions -- 11.2.3 Dimension Conventions -- 11.3 Common Options -- 11.4 Determining and Setting Options -- 11.5 The Basic Widgets -- 11.6 Introducing Widgets: label, button, and entry -- 11.6.1 The label Widget -- 11.6.2 The button Widget -- 11.6.3 The entry Widget -- 11.6.4 Using Namespaces or TclOO with Widgets -- Using Namespace Scope with a Widget -- Using TclOO with a Widget -- 11.7 Application Layout: Geometry Managers and Container Widgets -- 11.7.1 Container Widgets: frame, labelframe, panedwindow -- The frame Widget -- The labelframe Widget -- The ttk::notebook Widget -- The panedwindow Widget -- 11.7.2 Widget Layout: place, pack, and grid -- The place Layout Manager -- The pack Layout Manager -- The grid Layout Manager -- Working Together -- 11.8 Selection Widgets: radiobutton, checkbutton, menu, and listbox -- 11.8.1 radiobutton and checkbutton -- radiobutton -- checkbutton -- 11.8.2 Pull-down Menus: menu, menubutton, and Menubars -- Menubars -- 11.8.3 Selection Widgets: listbox -- 11.9 Scrollbar -- 11.9.1 The Basic scrollbar -- 11.9.2 scrollbar Details -- 11.9.3 Intercepting scrollbar Commands -- 11.10 The scale Widget -- 11.11 New Windows -- 11.12 Interacting with the Event Loop -- 11.13 Scheduling the Future: after -- 11.13.1 Canceling the Future -- 11.14 Bottom Line -- 11.15 Problems -- 12 Using the canvas Widget -- 12.1 Overview of the canvas Widget -- 12.1.1 Identifiers and Tags -- 12.1.2 Coordinates -- 12.1.3 Binding -- 12.2 Creating a canvas Widget -- 12.3 Creating Displayable canvas Items -- 12.3.1 The Line Item -- 12.3.2 The Arc Item -- 12.3.3 The Rectangle Item -- 12.3.4 The Oval Item -- 12.3.5 The Polygon Item. |
ctrlnum | (OCoLC)785776828 |
dewey-full | 005.2/762 |
dewey-hundreds | 000 - Computer science, information, general works |
dewey-ones | 005 - Computer programming, programs, data, security |
dewey-raw | 005.2/762 |
dewey-search | 005.2/762 |
dewey-sort | 15.2 3762 |
dewey-tens | 000 - Computer science, information, general works |
discipline | Informatik |
edition | 3rd ed. |
format | Electronic eBook |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>14535cam a2200697Ma 4500</leader><controlfield tag="001">ZDB-4-EBA-ocn785776828</controlfield><controlfield tag="003">OCoLC</controlfield><controlfield tag="005">20241004212047.0</controlfield><controlfield tag="006">m o d </controlfield><controlfield tag="007">cr cn|||||||||</controlfield><controlfield tag="008">111003s2012 maua o 001 0 eng d</controlfield><datafield tag="010" ind1=" " ind2=" "><subfield code="z"> 2011038927</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">E7B</subfield><subfield code="b">eng</subfield><subfield code="e">pn</subfield><subfield code="c">E7B</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">N$T</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">DEBSZ</subfield><subfield code="d">YDXCP</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCF</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">LOA</subfield><subfield code="d">ICA</subfield><subfield code="d">LVT</subfield><subfield code="d">AGLDB</subfield><subfield code="d">K6U</subfield><subfield code="d">PIFAG</subfield><subfield code="d">FVL</subfield><subfield code="d">U3W</subfield><subfield code="d">COCUF</subfield><subfield code="d">D6H</subfield><subfield code="d">STF</subfield><subfield code="d">WRM</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">VTS</subfield><subfield code="d">INT</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">A6Q</subfield><subfield code="d">VT2</subfield><subfield code="d">C6I</subfield><subfield code="d">UKCRE</subfield><subfield code="d">VLY</subfield><subfield code="d">QGK</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCQ</subfield><subfield code="d">OCLCO</subfield><subfield code="d">OCLCL</subfield></datafield><datafield tag="019" ind1=" " ind2=" "><subfield code="a">781539194</subfield><subfield code="a">962188889</subfield><subfield code="a">991956639</subfield><subfield code="a">1037763411</subfield><subfield code="a">1038700340</subfield><subfield code="a">1083563444</subfield><subfield code="a">1103281338</subfield><subfield code="a">1153487259</subfield><subfield code="a">1162062505</subfield><subfield code="a">1202554739</subfield><subfield code="a">1240509687</subfield><subfield code="a">1241762464</subfield><subfield code="a">1295600084</subfield><subfield code="a">1300684611</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9780123847188</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">0123847184</subfield><subfield code="q">(electronic bk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="z">9780123847171</subfield><subfield code="q">(pbk.)</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">1283447894</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781283447898</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9786613447890</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">6613447897</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)785776828</subfield><subfield code="z">(OCoLC)781539194</subfield><subfield code="z">(OCoLC)962188889</subfield><subfield code="z">(OCoLC)991956639</subfield><subfield code="z">(OCoLC)1037763411</subfield><subfield code="z">(OCoLC)1038700340</subfield><subfield code="z">(OCoLC)1083563444</subfield><subfield code="z">(OCoLC)1103281338</subfield><subfield code="z">(OCoLC)1153487259</subfield><subfield code="z">(OCoLC)1162062505</subfield><subfield code="z">(OCoLC)1202554739</subfield><subfield code="z">(OCoLC)1240509687</subfield><subfield code="z">(OCoLC)1241762464</subfield><subfield code="z">(OCoLC)1295600084</subfield><subfield code="z">(OCoLC)1300684611</subfield></datafield><datafield tag="050" ind1=" " ind2="4"><subfield code="a">QA76.73.T44</subfield><subfield code="b">F55 2012eb</subfield></datafield><datafield tag="072" ind1=" " ind2="7"><subfield code="a">COM</subfield><subfield code="x">051260</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="072" ind1=" " ind2="7"><subfield code="a">COM</subfield><subfield code="x">051420</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="082" ind1="7" ind2=" "><subfield code="a">005.2/762</subfield><subfield code="2">23</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">MAIN</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Flynt, Clif.</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Tcl/Tk :</subfield><subfield code="b">a developer's guide /</subfield><subfield code="c">Clif Flynt.</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">3rd ed.</subfield></datafield><datafield tag="260" ind1=" " ind2=" "><subfield code="a">Waltham, Mass. :</subfield><subfield code="b">Elsevier,</subfield><subfield code="c">2012.</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">1 online resource (xxiv, 792 pages) :</subfield><subfield code="b">illustrations (some color).</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="a">text</subfield><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="a">computer</subfield><subfield code="b">c</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="a">online resource</subfield><subfield code="b">cr</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="347" ind1=" " ind2=" "><subfield code="a">text file</subfield></datafield><datafield tag="490" ind1="1" ind2=" "><subfield code="a">The Morgan Kaufmann series in software engineering and programming</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Includes index.</subfield></datafield><datafield tag="500" ind1=" " ind2=" "><subfield code="a">Machine generated contents note: Chapter 1: Tcl/Tk Features Chapter 2: The Mechanics of Using the Tcl and Tk Interpreters Chapter 3: Introduction to the Tcl Language Chapter 4: File System, Disk I/O and Sockets Chapter 5: Using Strings and Lists Chapter 6: Basic list, array and dict Chapter 7: Advanced List, array and dict Chapter 8: Procedure Techniques Chapter 9: Namespaces Chapter 10: Basic TclOO Chapter 11: Advanced TclOO Chapter 12: Packages and modules Chapter 13: Introduction to Tk Graphics Chapter 14: Overview of the canvas Widget Chapter 15: The text widget and htmllib Chapter 16: Themed Widgets Chapter 17: Tk Megawidgets Chapter 18: Writing a Tcl Extension Chapter 19: Extensions and Packages Chapter 20: Programming Tools Chapter 21: Debugging and Optimization techniques Chapter 22: Tips and Techniques.</subfield></datafield><datafield tag="505" ind1="0" ind2=" "><subfield code="a">Front Cover -- Tcl/Tk: A Developer's Guide -- Copyright -- Table of Contents -- Foreword -- Preface -- Tcl/Tk: GUI Programming in a Gooey World -- Acknowledgments -- Introduction -- Where to Get More Information -- 1 Tcl/Tk Features -- 1.1 Tcl Overview -- 1.1.1 The Standard Tcl Distribution -- 1.1.2 Documentation -- 1.2 Tcl as a Glue Language -- 1.2.1 Tcl Scripts Compared with UNIX Shell Scripts -- 1.2.2 Tcl Scripts Compared with MS-DOS .bat Files -- 1.3 Tcl as a General-purpose Interpreter -- 1.3.1 Tcl/Tk Compared to Visual Basic -- 1.3.2 Tcl/Tk Compared to Perl -- 1.3.3 Tcl/Tk Compared to Python -- 1.3.4 Tcl/Tk Compared to Java -- 1.4 Tcl as an Extensible Interpreter -- 1.5 Tcl as an Embeddable Interpreter -- 1.6 Tcl as a Rapid Development Tool -- 1.7 GUI-based Programming -- 1.8 Shipping Products -- 1.9 Bottom Line -- 1.10 Problems -- 2 The Mechanics of Using the Tcl and Tk Interpreters -- 2.1 The tclsh and wish Interpreters -- 2.1.1 Starting the tclsh and wish Interpreters -- 2.1.2 Starting tclsh or wish under UNIX -- Errors Caused by Improper Installation -- 2.1.3 Starting tclsh or wish under Microsoft Windows -- 2.1.4 Starting tclsh or wish on the Mac -- Making a Desktop Icon -- 2.1.5 Exiting tclsh or wish -- 2.2 Using tclsh/wish Interactively -- 2.2.1 Tclsh as a Command Shell -- 2.2.2 Tk Console (tkcon)-An Alternative Interactive tclsh/wish Shell -- 2.2.3 Evaluating Scripts Interactively -- 2.3 Evaluating Tcl Script Files -- 2.3.1 The Tcl Script File -- 2.3.2 Evaluating Tcl Script Files -- 2.3.3 Evaluating a Tcl Script File under UNIX -- 2.3.4 Evaluating a Tcl Script File under Microsoft Windows -- Changing File Association on Windows XP and Earlier -- Changing File Association on Windows Vista and Windows 7 -- 2.3.5 Evaluating a Tcl Script on the Mac -- 2.4 Bottom Line -- 2.5 Problems -- 3 Introduction to the Tcl Language.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">3.1 Overview of the Basics -- 3.1.1 Syntax -- 3.1.2 Grouping Words -- 3.1.3 Comments -- 3.1.4 Data Representation -- 3.1.5 Command Results -- 3.1.6 Errors -- 3.2 Command Evaluation and Substitutions -- 3.2.1 Substitution -- 3.2.2 Controlling Substitutions with Quotes, Curly Braces, and the Backslash -- Splitting Lists -- 3.2.3 Steps in Command Evaluation -- 3.3 Data Types -- 3.3.1 Assigning Values to Variables -- 3.3.2 Strings -- 3.3.3 String Processing Commands -- String and Format Command Examples -- 3.3.4 Lists -- 3.3.5 List Processing Commands -- 3.3.6 Dictionaries -- 3.3.7 Associative Arrays -- 3.3.8 Associative Array Commands -- 3.3.9 Binary Data -- 3.3.10 Handles -- 3.4 Arithmetic and Boolean Operations -- 3.4.1 Math Operations -- Trigonometric Functions -- Exponential Functions -- Conversion Functions -- Random Numbers -- 3.4.2 Conditionals -- The if Command -- The switch Command -- 3.4.3 Looping -- The for Command -- The while Command -- The foreach Command -- 3.4.4 Exception Handling in Tcl -- 3.5 Modularization -- 3.5.1 Procedures -- 3.5.2 Loading Code from a Script File -- 3.5.3 Examining the State of the Tcl Interpreter -- 3.6 Bottom Line -- 3.7 Problems -- 4 Navigating the File System, Basic I/O and Sockets -- 4.1 Navigating the File System -- 4.1.1 Constructing File Paths -- 4.2 Properties of File System Items -- 4.3 Removing Files -- 4.4 Input/Output in TCL -- 4.4.1 Output -- 4.4.2 Input -- 4.4.3 Creating a Channel -- 4.4.4 Closing Channels -- 4.5 Sockets -- 4.5.1 Using a Client Socket -- 4.5.2 Controlling Data Flow -- 4.5.3 Server Sockets -- 4.6 Bottom Line -- 4.7 Problems -- 5 Using Strings and Lists -- 5.1 Converting a String into a List -- 5.2 Examining the List with a for Loop -- 5.3 Using the foreach Command -- 5.4 Using string match Instead of string first -- 5.5 Using lsearch -- 5.6 The regexp Command.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">5.6.1 Regular Expression Matching Rules -- Basic Regular Expression Rules -- 5.6.2 Examples of Regular Expressions -- 5.6.3 Advanced and Extended Regular Expression Rules -- Minimum and Maximum Match -- Internationalization -- Non-ASCII Values -- Character Classes, Collating Elements, and Equivalence Classes -- Tcl Commands Implementing Regular Expressions -- 5.6.4 Back to the Searching URLs -- 5.7 Creating a Procedure -- 5.7.1 The proc Command -- 5.7.2 A findUrl Procedure -- 5.7.3 Variable Scope -- 5.7.4 Global Information Variables -- 5.8 Making a Script -- 5.8.1 The Executable Script -- 5.9 Speed -- 5.9.1 Comparison of Execution Speeds (Linux Celeron @ 2.6 GHz) -- 5.10 Bottom Line -- 5.11 Problems -- 6 Complex Data Structures with Lists, Arrays and Dicts -- 6.1 Using the Tcl List -- 6.1.1 Manipulating Ordered Data with Lists -- 6.1.2 Manipulating Data with Keyed Lists -- 6.2 Using the Dict -- 6.2.1 Grouping Related Values -- 6.3 Using the Associative Array -- 6.4 Trees in Tcl -- 6.5 Tcl and SQL -- 6.5.1 SQL Basics -- 6.5.2 Using tdbc -- Manipulating Data -- 6.5.3 Using Referenced Tables -- Introspection into Databases -- 6.6 Performance -- 6.7 Bottom Line -- 6.8 Problems -- 7 Procedure Techniques -- 7.1 Arguments to Procedures -- 7.1.1 Variable Number of Arguments to a Procedure -- 7.1.2 Default Values for Procedure Arguments -- 7.2 Renaming or Deleting Commands -- 7.3 Getting Information About Procedures -- 7.4 Substitution and Evaluation of Strings -- 7.4.1 Performing Variable Substitution on a String -- 7.4.2 Evaluating a String as a Tcl Command -- 7.5 Working with Global and Local Scopes -- 7.5.1 Global and Local Scope -- 7.6 Making a Tcl Object -- 7.6.1 An Object Example -- 7.7 Bottom Line -- 7.8 Problems -- 8 Namespaces, Packages and Modules -- 8.1 Namespaces and Scoping Rules -- 8.1.1 Namespace Scope -- 8.1.2 Namespace Naming Rules.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">8.1.3 Accessing Namespace Entities -- 8.1.4 Why Use Namespaces? -- 8.1.5 The namespace and variable Commands -- 8.1.6 Creating and Populating a Namespace -- 8.1.7 Namespace Nesting -- 8.1.8 Namespace Ensembles -- 8.2 Packages -- 8.2.1 How Packages Work -- 8.2.2 Internal Details: Files and Variables Used with Packages -- 8.2.3 Package Commands -- 8.2.4 Version Numbers -- 8.2.5 Package Cookbook -- Creating a Package -- Using a Tcl Package -- 8.3 TCL Modules -- 8.4 Namespaces and Packages -- 8.5 Hanoi with a Stack Namespace and Package -- 8.6 Conventions and Caveats -- 8.7 Bottom Line -- 8.8 Problems -- 9 Basic Object-Oriented Programming in Tcl -- 9.1 Creating a TclOO Class and Object -- 9.1.1 Constructor and Destructor -- 9.1.2 Methods -- Method Naming Convention -- Invoking Methods from Within Methods -- Registering Methods for Callbacks -- 9.1.3 Inheritance -- Method Chaining -- Inheritance -- Single Inheritance -- Multiple Inheritance -- Using Mixins -- Aggregation -- 9.1.4 Filters -- 9.2 Bottom Line -- 9.3 Problems -- 10 Advanced Object-Oriented Programming in Tcl -- 10.1 Modifying Classes and Objects -- 10.1.1 Modifying Classes -- Modifying Methods -- 10.1.2 Modifying Inheritance -- Adding a Superclass -- Mixing in a New Class -- 10.1.3 Modifying Class, Constructor, Variables and Destructor -- 10.1.4 Static Methods and Variables I -- 10.2 Modifying Objects -- 10.2.1 Changing an Object's Class -- 10.2.2 Defining Per-object Mixins -- 10.2.3 Adding a Method to an Object -- 10.3 Examining Classes and Objects -- 10.3.1 Evaluation of Chains -- 10.3.2 Examining Methods -- 10.3.3 Examining Inheritance -- 10.3.4 Getting a List of Base Classes -- 10.4 Examining Objects -- 10.5 Using TclOO with Callbacks -- 10.6 Adding New Functionality to TclOO -- 10.6.1 Static Variables II -- 10.6.2 Static Methods II -- 10.6.3 Aggregated Objects That Modify the Possessor.</subfield></datafield><datafield tag="505" ind1="8" ind2=" "><subfield code="a">10.6.4 Objects That Grow and Change -- 10.7 Bottom Line -- 10.8 Problems -- 11 Introduction to Tk Graphics -- 11.1 Creating a Widget -- 11.2 Conventions -- 11.2.1 Widget Naming Conventions -- 11.2.2 Color Naming Conventions -- 11.2.3 Dimension Conventions -- 11.3 Common Options -- 11.4 Determining and Setting Options -- 11.5 The Basic Widgets -- 11.6 Introducing Widgets: label, button, and entry -- 11.6.1 The label Widget -- 11.6.2 The button Widget -- 11.6.3 The entry Widget -- 11.6.4 Using Namespaces or TclOO with Widgets -- Using Namespace Scope with a Widget -- Using TclOO with a Widget -- 11.7 Application Layout: Geometry Managers and Container Widgets -- 11.7.1 Container Widgets: frame, labelframe, panedwindow -- The frame Widget -- The labelframe Widget -- The ttk::notebook Widget -- The panedwindow Widget -- 11.7.2 Widget Layout: place, pack, and grid -- The place Layout Manager -- The pack Layout Manager -- The grid Layout Manager -- Working Together -- 11.8 Selection Widgets: radiobutton, checkbutton, menu, and listbox -- 11.8.1 radiobutton and checkbutton -- radiobutton -- checkbutton -- 11.8.2 Pull-down Menus: menu, menubutton, and Menubars -- Menubars -- 11.8.3 Selection Widgets: listbox -- 11.9 Scrollbar -- 11.9.1 The Basic scrollbar -- 11.9.2 scrollbar Details -- 11.9.3 Intercepting scrollbar Commands -- 11.10 The scale Widget -- 11.11 New Windows -- 11.12 Interacting with the Event Loop -- 11.13 Scheduling the Future: after -- 11.13.1 Canceling the Future -- 11.14 Bottom Line -- 11.15 Problems -- 12 Using the canvas Widget -- 12.1 Overview of the canvas Widget -- 12.1.1 Identifiers and Tags -- 12.1.2 Coordinates -- 12.1.3 Binding -- 12.2 Creating a canvas Widget -- 12.3 Creating Displayable canvas Items -- 12.3.1 The Line Item -- 12.3.2 The Arc Item -- 12.3.3 The Rectangle Item -- 12.3.4 The Oval Item -- 12.3.5 The Polygon Item.</subfield></datafield><datafield tag="520" ind1=" " ind2=" "><subfield code="a">Newly updated with over 150 pages of material on the latest Tcl extensions, Tcl/Tk: A Developer's Guide is a unique practical tutorial for professional programmers and beginners alike. Starting with a clear picture of the basics, Tcl/Tk covers the variety of tools in this "Swiss army knife" of programming languages, giving you the ability to enhance your programs, extend your application's capabilities, and become a more effective programmer. This updated edition covers all of the new features of version 8.6, including object-oriented programming and the creation of megawidgets, existing data structure implementations, themed widgets and virtual events. Extensive code snippets and online tutorials in various languages will give you a firm grasp on how to use the Tcl/Tk libraries and interpreters and, most importantly, on what constitutes an effective strategy for using Tcl/Tk. Includes the latest features of Tcl/Tk 8.6 Covers Tcl development tools, popular extensions, and packages to allow developers to solve real-world problems with Tcl/Tk immediately Provides straightforward explanations for beginners and offers tips, style guidelines, and debugging techniques for advanced users Companion website includes Tcl/Tk tutorials, applications, distributions, and more tools.</subfield></datafield><datafield tag="546" ind1=" " ind2=" "><subfield code="a">English.</subfield></datafield><datafield tag="630" ind1="0" ind2="0"><subfield code="a">Tk toolkit.</subfield><subfield code="0">http://id.loc.gov/authorities/names/n94001650</subfield></datafield><datafield tag="630" ind1="0" ind2="7"><subfield code="a">Tk toolkit</subfield><subfield code="2">fast</subfield></datafield><datafield tag="650" ind1=" " ind2="0"><subfield code="a">Tcl (Computer program language)</subfield><subfield code="0">http://id.loc.gov/authorities/subjects/sh94000154</subfield></datafield><datafield tag="650" ind1=" " ind2="6"><subfield code="a">Tcl (Langage de programmation)</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">COMPUTERS</subfield><subfield code="x">Programming Languages</subfield><subfield code="x">JavaScript.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">COMPUTERS</subfield><subfield code="x">Programming Languages</subfield><subfield code="x">VBScript.</subfield><subfield code="2">bisacsh</subfield></datafield><datafield tag="650" ind1=" " ind2="7"><subfield code="a">Tcl (Computer program language)</subfield><subfield code="2">fast</subfield></datafield><datafield tag="758" ind1=" " ind2=" "><subfield code="i">has work:</subfield><subfield code="a">Tcl/Tk (Text)</subfield><subfield code="1">https://id.oclc.org/worldcat/entity/E39PCFHtcqqDvYcCxqk3WK6qcP</subfield><subfield code="4">https://id.oclc.org/worldcat/ontology/hasWork</subfield></datafield><datafield tag="776" ind1="0" ind2="8"><subfield code="i">Print version:</subfield><subfield code="a">Flynt, Clif.</subfield><subfield code="t">Tcl/Tk.</subfield><subfield code="b">3rd ed.</subfield><subfield code="d">Waltham, Mass. : Elsevier, 2012</subfield><subfield code="w">(DLC) 2011038927</subfield></datafield><datafield tag="830" ind1=" " ind2="0"><subfield code="a">Morgan Kaufmann Series in Software Engineering and Programming.</subfield></datafield><datafield tag="856" ind1="4" ind2="0"><subfield code="l">FWS01</subfield><subfield code="p">ZDB-4-EBA</subfield><subfield code="q">FWS_PDA_EBA</subfield><subfield code="u">https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=453796</subfield><subfield code="3">Volltext</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">ebrary</subfield><subfield code="b">EBRY</subfield><subfield code="n">ebr10528206</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">EBSCOhost</subfield><subfield code="b">EBSC</subfield><subfield code="n">453796</subfield></datafield><datafield tag="938" ind1=" " ind2=" "><subfield code="a">YBP Library Services</subfield><subfield code="b">YANK</subfield><subfield code="n">7408672</subfield></datafield><datafield tag="994" ind1=" " ind2=" "><subfield code="a">92</subfield><subfield code="b">GEBAY</subfield></datafield><datafield tag="912" ind1=" " ind2=" "><subfield code="a">ZDB-4-EBA</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-863</subfield></datafield></record></collection> |
id | ZDB-4-EBA-ocn785776828 |
illustrated | Illustrated |
indexdate | 2024-11-27T13:18:20Z |
institution | BVB |
isbn | 9780123847188 0123847184 1283447894 9781283447898 9786613447890 6613447897 |
language | English |
oclc_num | 785776828 |
open_access_boolean | |
owner | MAIN DE-863 DE-BY-FWS |
owner_facet | MAIN DE-863 DE-BY-FWS |
physical | 1 online resource (xxiv, 792 pages) : illustrations (some color). |
psigel | ZDB-4-EBA |
publishDate | 2012 |
publishDateSearch | 2012 |
publishDateSort | 2012 |
publisher | Elsevier, |
record_format | marc |
series | Morgan Kaufmann Series in Software Engineering and Programming. |
series2 | The Morgan Kaufmann series in software engineering and programming |
spelling | Flynt, Clif. Tcl/Tk : a developer's guide / Clif Flynt. 3rd ed. Waltham, Mass. : Elsevier, 2012. 1 online resource (xxiv, 792 pages) : illustrations (some color). text txt rdacontent computer c rdamedia online resource cr rdacarrier text file The Morgan Kaufmann series in software engineering and programming Includes index. Machine generated contents note: Chapter 1: Tcl/Tk Features Chapter 2: The Mechanics of Using the Tcl and Tk Interpreters Chapter 3: Introduction to the Tcl Language Chapter 4: File System, Disk I/O and Sockets Chapter 5: Using Strings and Lists Chapter 6: Basic list, array and dict Chapter 7: Advanced List, array and dict Chapter 8: Procedure Techniques Chapter 9: Namespaces Chapter 10: Basic TclOO Chapter 11: Advanced TclOO Chapter 12: Packages and modules Chapter 13: Introduction to Tk Graphics Chapter 14: Overview of the canvas Widget Chapter 15: The text widget and htmllib Chapter 16: Themed Widgets Chapter 17: Tk Megawidgets Chapter 18: Writing a Tcl Extension Chapter 19: Extensions and Packages Chapter 20: Programming Tools Chapter 21: Debugging and Optimization techniques Chapter 22: Tips and Techniques. Front Cover -- Tcl/Tk: A Developer's Guide -- Copyright -- Table of Contents -- Foreword -- Preface -- Tcl/Tk: GUI Programming in a Gooey World -- Acknowledgments -- Introduction -- Where to Get More Information -- 1 Tcl/Tk Features -- 1.1 Tcl Overview -- 1.1.1 The Standard Tcl Distribution -- 1.1.2 Documentation -- 1.2 Tcl as a Glue Language -- 1.2.1 Tcl Scripts Compared with UNIX Shell Scripts -- 1.2.2 Tcl Scripts Compared with MS-DOS .bat Files -- 1.3 Tcl as a General-purpose Interpreter -- 1.3.1 Tcl/Tk Compared to Visual Basic -- 1.3.2 Tcl/Tk Compared to Perl -- 1.3.3 Tcl/Tk Compared to Python -- 1.3.4 Tcl/Tk Compared to Java -- 1.4 Tcl as an Extensible Interpreter -- 1.5 Tcl as an Embeddable Interpreter -- 1.6 Tcl as a Rapid Development Tool -- 1.7 GUI-based Programming -- 1.8 Shipping Products -- 1.9 Bottom Line -- 1.10 Problems -- 2 The Mechanics of Using the Tcl and Tk Interpreters -- 2.1 The tclsh and wish Interpreters -- 2.1.1 Starting the tclsh and wish Interpreters -- 2.1.2 Starting tclsh or wish under UNIX -- Errors Caused by Improper Installation -- 2.1.3 Starting tclsh or wish under Microsoft Windows -- 2.1.4 Starting tclsh or wish on the Mac -- Making a Desktop Icon -- 2.1.5 Exiting tclsh or wish -- 2.2 Using tclsh/wish Interactively -- 2.2.1 Tclsh as a Command Shell -- 2.2.2 Tk Console (tkcon)-An Alternative Interactive tclsh/wish Shell -- 2.2.3 Evaluating Scripts Interactively -- 2.3 Evaluating Tcl Script Files -- 2.3.1 The Tcl Script File -- 2.3.2 Evaluating Tcl Script Files -- 2.3.3 Evaluating a Tcl Script File under UNIX -- 2.3.4 Evaluating a Tcl Script File under Microsoft Windows -- Changing File Association on Windows XP and Earlier -- Changing File Association on Windows Vista and Windows 7 -- 2.3.5 Evaluating a Tcl Script on the Mac -- 2.4 Bottom Line -- 2.5 Problems -- 3 Introduction to the Tcl Language. 3.1 Overview of the Basics -- 3.1.1 Syntax -- 3.1.2 Grouping Words -- 3.1.3 Comments -- 3.1.4 Data Representation -- 3.1.5 Command Results -- 3.1.6 Errors -- 3.2 Command Evaluation and Substitutions -- 3.2.1 Substitution -- 3.2.2 Controlling Substitutions with Quotes, Curly Braces, and the Backslash -- Splitting Lists -- 3.2.3 Steps in Command Evaluation -- 3.3 Data Types -- 3.3.1 Assigning Values to Variables -- 3.3.2 Strings -- 3.3.3 String Processing Commands -- String and Format Command Examples -- 3.3.4 Lists -- 3.3.5 List Processing Commands -- 3.3.6 Dictionaries -- 3.3.7 Associative Arrays -- 3.3.8 Associative Array Commands -- 3.3.9 Binary Data -- 3.3.10 Handles -- 3.4 Arithmetic and Boolean Operations -- 3.4.1 Math Operations -- Trigonometric Functions -- Exponential Functions -- Conversion Functions -- Random Numbers -- 3.4.2 Conditionals -- The if Command -- The switch Command -- 3.4.3 Looping -- The for Command -- The while Command -- The foreach Command -- 3.4.4 Exception Handling in Tcl -- 3.5 Modularization -- 3.5.1 Procedures -- 3.5.2 Loading Code from a Script File -- 3.5.3 Examining the State of the Tcl Interpreter -- 3.6 Bottom Line -- 3.7 Problems -- 4 Navigating the File System, Basic I/O and Sockets -- 4.1 Navigating the File System -- 4.1.1 Constructing File Paths -- 4.2 Properties of File System Items -- 4.3 Removing Files -- 4.4 Input/Output in TCL -- 4.4.1 Output -- 4.4.2 Input -- 4.4.3 Creating a Channel -- 4.4.4 Closing Channels -- 4.5 Sockets -- 4.5.1 Using a Client Socket -- 4.5.2 Controlling Data Flow -- 4.5.3 Server Sockets -- 4.6 Bottom Line -- 4.7 Problems -- 5 Using Strings and Lists -- 5.1 Converting a String into a List -- 5.2 Examining the List with a for Loop -- 5.3 Using the foreach Command -- 5.4 Using string match Instead of string first -- 5.5 Using lsearch -- 5.6 The regexp Command. 5.6.1 Regular Expression Matching Rules -- Basic Regular Expression Rules -- 5.6.2 Examples of Regular Expressions -- 5.6.3 Advanced and Extended Regular Expression Rules -- Minimum and Maximum Match -- Internationalization -- Non-ASCII Values -- Character Classes, Collating Elements, and Equivalence Classes -- Tcl Commands Implementing Regular Expressions -- 5.6.4 Back to the Searching URLs -- 5.7 Creating a Procedure -- 5.7.1 The proc Command -- 5.7.2 A findUrl Procedure -- 5.7.3 Variable Scope -- 5.7.4 Global Information Variables -- 5.8 Making a Script -- 5.8.1 The Executable Script -- 5.9 Speed -- 5.9.1 Comparison of Execution Speeds (Linux Celeron @ 2.6 GHz) -- 5.10 Bottom Line -- 5.11 Problems -- 6 Complex Data Structures with Lists, Arrays and Dicts -- 6.1 Using the Tcl List -- 6.1.1 Manipulating Ordered Data with Lists -- 6.1.2 Manipulating Data with Keyed Lists -- 6.2 Using the Dict -- 6.2.1 Grouping Related Values -- 6.3 Using the Associative Array -- 6.4 Trees in Tcl -- 6.5 Tcl and SQL -- 6.5.1 SQL Basics -- 6.5.2 Using tdbc -- Manipulating Data -- 6.5.3 Using Referenced Tables -- Introspection into Databases -- 6.6 Performance -- 6.7 Bottom Line -- 6.8 Problems -- 7 Procedure Techniques -- 7.1 Arguments to Procedures -- 7.1.1 Variable Number of Arguments to a Procedure -- 7.1.2 Default Values for Procedure Arguments -- 7.2 Renaming or Deleting Commands -- 7.3 Getting Information About Procedures -- 7.4 Substitution and Evaluation of Strings -- 7.4.1 Performing Variable Substitution on a String -- 7.4.2 Evaluating a String as a Tcl Command -- 7.5 Working with Global and Local Scopes -- 7.5.1 Global and Local Scope -- 7.6 Making a Tcl Object -- 7.6.1 An Object Example -- 7.7 Bottom Line -- 7.8 Problems -- 8 Namespaces, Packages and Modules -- 8.1 Namespaces and Scoping Rules -- 8.1.1 Namespace Scope -- 8.1.2 Namespace Naming Rules. 8.1.3 Accessing Namespace Entities -- 8.1.4 Why Use Namespaces? -- 8.1.5 The namespace and variable Commands -- 8.1.6 Creating and Populating a Namespace -- 8.1.7 Namespace Nesting -- 8.1.8 Namespace Ensembles -- 8.2 Packages -- 8.2.1 How Packages Work -- 8.2.2 Internal Details: Files and Variables Used with Packages -- 8.2.3 Package Commands -- 8.2.4 Version Numbers -- 8.2.5 Package Cookbook -- Creating a Package -- Using a Tcl Package -- 8.3 TCL Modules -- 8.4 Namespaces and Packages -- 8.5 Hanoi with a Stack Namespace and Package -- 8.6 Conventions and Caveats -- 8.7 Bottom Line -- 8.8 Problems -- 9 Basic Object-Oriented Programming in Tcl -- 9.1 Creating a TclOO Class and Object -- 9.1.1 Constructor and Destructor -- 9.1.2 Methods -- Method Naming Convention -- Invoking Methods from Within Methods -- Registering Methods for Callbacks -- 9.1.3 Inheritance -- Method Chaining -- Inheritance -- Single Inheritance -- Multiple Inheritance -- Using Mixins -- Aggregation -- 9.1.4 Filters -- 9.2 Bottom Line -- 9.3 Problems -- 10 Advanced Object-Oriented Programming in Tcl -- 10.1 Modifying Classes and Objects -- 10.1.1 Modifying Classes -- Modifying Methods -- 10.1.2 Modifying Inheritance -- Adding a Superclass -- Mixing in a New Class -- 10.1.3 Modifying Class, Constructor, Variables and Destructor -- 10.1.4 Static Methods and Variables I -- 10.2 Modifying Objects -- 10.2.1 Changing an Object's Class -- 10.2.2 Defining Per-object Mixins -- 10.2.3 Adding a Method to an Object -- 10.3 Examining Classes and Objects -- 10.3.1 Evaluation of Chains -- 10.3.2 Examining Methods -- 10.3.3 Examining Inheritance -- 10.3.4 Getting a List of Base Classes -- 10.4 Examining Objects -- 10.5 Using TclOO with Callbacks -- 10.6 Adding New Functionality to TclOO -- 10.6.1 Static Variables II -- 10.6.2 Static Methods II -- 10.6.3 Aggregated Objects That Modify the Possessor. 10.6.4 Objects That Grow and Change -- 10.7 Bottom Line -- 10.8 Problems -- 11 Introduction to Tk Graphics -- 11.1 Creating a Widget -- 11.2 Conventions -- 11.2.1 Widget Naming Conventions -- 11.2.2 Color Naming Conventions -- 11.2.3 Dimension Conventions -- 11.3 Common Options -- 11.4 Determining and Setting Options -- 11.5 The Basic Widgets -- 11.6 Introducing Widgets: label, button, and entry -- 11.6.1 The label Widget -- 11.6.2 The button Widget -- 11.6.3 The entry Widget -- 11.6.4 Using Namespaces or TclOO with Widgets -- Using Namespace Scope with a Widget -- Using TclOO with a Widget -- 11.7 Application Layout: Geometry Managers and Container Widgets -- 11.7.1 Container Widgets: frame, labelframe, panedwindow -- The frame Widget -- The labelframe Widget -- The ttk::notebook Widget -- The panedwindow Widget -- 11.7.2 Widget Layout: place, pack, and grid -- The place Layout Manager -- The pack Layout Manager -- The grid Layout Manager -- Working Together -- 11.8 Selection Widgets: radiobutton, checkbutton, menu, and listbox -- 11.8.1 radiobutton and checkbutton -- radiobutton -- checkbutton -- 11.8.2 Pull-down Menus: menu, menubutton, and Menubars -- Menubars -- 11.8.3 Selection Widgets: listbox -- 11.9 Scrollbar -- 11.9.1 The Basic scrollbar -- 11.9.2 scrollbar Details -- 11.9.3 Intercepting scrollbar Commands -- 11.10 The scale Widget -- 11.11 New Windows -- 11.12 Interacting with the Event Loop -- 11.13 Scheduling the Future: after -- 11.13.1 Canceling the Future -- 11.14 Bottom Line -- 11.15 Problems -- 12 Using the canvas Widget -- 12.1 Overview of the canvas Widget -- 12.1.1 Identifiers and Tags -- 12.1.2 Coordinates -- 12.1.3 Binding -- 12.2 Creating a canvas Widget -- 12.3 Creating Displayable canvas Items -- 12.3.1 The Line Item -- 12.3.2 The Arc Item -- 12.3.3 The Rectangle Item -- 12.3.4 The Oval Item -- 12.3.5 The Polygon Item. Newly updated with over 150 pages of material on the latest Tcl extensions, Tcl/Tk: A Developer's Guide is a unique practical tutorial for professional programmers and beginners alike. Starting with a clear picture of the basics, Tcl/Tk covers the variety of tools in this "Swiss army knife" of programming languages, giving you the ability to enhance your programs, extend your application's capabilities, and become a more effective programmer. This updated edition covers all of the new features of version 8.6, including object-oriented programming and the creation of megawidgets, existing data structure implementations, themed widgets and virtual events. Extensive code snippets and online tutorials in various languages will give you a firm grasp on how to use the Tcl/Tk libraries and interpreters and, most importantly, on what constitutes an effective strategy for using Tcl/Tk. Includes the latest features of Tcl/Tk 8.6 Covers Tcl development tools, popular extensions, and packages to allow developers to solve real-world problems with Tcl/Tk immediately Provides straightforward explanations for beginners and offers tips, style guidelines, and debugging techniques for advanced users Companion website includes Tcl/Tk tutorials, applications, distributions, and more tools. English. Tk toolkit. http://id.loc.gov/authorities/names/n94001650 Tk toolkit fast Tcl (Computer program language) http://id.loc.gov/authorities/subjects/sh94000154 Tcl (Langage de programmation) COMPUTERS Programming Languages JavaScript. bisacsh COMPUTERS Programming Languages VBScript. bisacsh Tcl (Computer program language) fast has work: Tcl/Tk (Text) https://id.oclc.org/worldcat/entity/E39PCFHtcqqDvYcCxqk3WK6qcP https://id.oclc.org/worldcat/ontology/hasWork Print version: Flynt, Clif. Tcl/Tk. 3rd ed. Waltham, Mass. : Elsevier, 2012 (DLC) 2011038927 Morgan Kaufmann Series in Software Engineering and Programming. FWS01 ZDB-4-EBA FWS_PDA_EBA https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=453796 Volltext |
spellingShingle | Flynt, Clif Tcl/Tk : a developer's guide / Morgan Kaufmann Series in Software Engineering and Programming. Front Cover -- Tcl/Tk: A Developer's Guide -- Copyright -- Table of Contents -- Foreword -- Preface -- Tcl/Tk: GUI Programming in a Gooey World -- Acknowledgments -- Introduction -- Where to Get More Information -- 1 Tcl/Tk Features -- 1.1 Tcl Overview -- 1.1.1 The Standard Tcl Distribution -- 1.1.2 Documentation -- 1.2 Tcl as a Glue Language -- 1.2.1 Tcl Scripts Compared with UNIX Shell Scripts -- 1.2.2 Tcl Scripts Compared with MS-DOS .bat Files -- 1.3 Tcl as a General-purpose Interpreter -- 1.3.1 Tcl/Tk Compared to Visual Basic -- 1.3.2 Tcl/Tk Compared to Perl -- 1.3.3 Tcl/Tk Compared to Python -- 1.3.4 Tcl/Tk Compared to Java -- 1.4 Tcl as an Extensible Interpreter -- 1.5 Tcl as an Embeddable Interpreter -- 1.6 Tcl as a Rapid Development Tool -- 1.7 GUI-based Programming -- 1.8 Shipping Products -- 1.9 Bottom Line -- 1.10 Problems -- 2 The Mechanics of Using the Tcl and Tk Interpreters -- 2.1 The tclsh and wish Interpreters -- 2.1.1 Starting the tclsh and wish Interpreters -- 2.1.2 Starting tclsh or wish under UNIX -- Errors Caused by Improper Installation -- 2.1.3 Starting tclsh or wish under Microsoft Windows -- 2.1.4 Starting tclsh or wish on the Mac -- Making a Desktop Icon -- 2.1.5 Exiting tclsh or wish -- 2.2 Using tclsh/wish Interactively -- 2.2.1 Tclsh as a Command Shell -- 2.2.2 Tk Console (tkcon)-An Alternative Interactive tclsh/wish Shell -- 2.2.3 Evaluating Scripts Interactively -- 2.3 Evaluating Tcl Script Files -- 2.3.1 The Tcl Script File -- 2.3.2 Evaluating Tcl Script Files -- 2.3.3 Evaluating a Tcl Script File under UNIX -- 2.3.4 Evaluating a Tcl Script File under Microsoft Windows -- Changing File Association on Windows XP and Earlier -- Changing File Association on Windows Vista and Windows 7 -- 2.3.5 Evaluating a Tcl Script on the Mac -- 2.4 Bottom Line -- 2.5 Problems -- 3 Introduction to the Tcl Language. 3.1 Overview of the Basics -- 3.1.1 Syntax -- 3.1.2 Grouping Words -- 3.1.3 Comments -- 3.1.4 Data Representation -- 3.1.5 Command Results -- 3.1.6 Errors -- 3.2 Command Evaluation and Substitutions -- 3.2.1 Substitution -- 3.2.2 Controlling Substitutions with Quotes, Curly Braces, and the Backslash -- Splitting Lists -- 3.2.3 Steps in Command Evaluation -- 3.3 Data Types -- 3.3.1 Assigning Values to Variables -- 3.3.2 Strings -- 3.3.3 String Processing Commands -- String and Format Command Examples -- 3.3.4 Lists -- 3.3.5 List Processing Commands -- 3.3.6 Dictionaries -- 3.3.7 Associative Arrays -- 3.3.8 Associative Array Commands -- 3.3.9 Binary Data -- 3.3.10 Handles -- 3.4 Arithmetic and Boolean Operations -- 3.4.1 Math Operations -- Trigonometric Functions -- Exponential Functions -- Conversion Functions -- Random Numbers -- 3.4.2 Conditionals -- The if Command -- The switch Command -- 3.4.3 Looping -- The for Command -- The while Command -- The foreach Command -- 3.4.4 Exception Handling in Tcl -- 3.5 Modularization -- 3.5.1 Procedures -- 3.5.2 Loading Code from a Script File -- 3.5.3 Examining the State of the Tcl Interpreter -- 3.6 Bottom Line -- 3.7 Problems -- 4 Navigating the File System, Basic I/O and Sockets -- 4.1 Navigating the File System -- 4.1.1 Constructing File Paths -- 4.2 Properties of File System Items -- 4.3 Removing Files -- 4.4 Input/Output in TCL -- 4.4.1 Output -- 4.4.2 Input -- 4.4.3 Creating a Channel -- 4.4.4 Closing Channels -- 4.5 Sockets -- 4.5.1 Using a Client Socket -- 4.5.2 Controlling Data Flow -- 4.5.3 Server Sockets -- 4.6 Bottom Line -- 4.7 Problems -- 5 Using Strings and Lists -- 5.1 Converting a String into a List -- 5.2 Examining the List with a for Loop -- 5.3 Using the foreach Command -- 5.4 Using string match Instead of string first -- 5.5 Using lsearch -- 5.6 The regexp Command. 5.6.1 Regular Expression Matching Rules -- Basic Regular Expression Rules -- 5.6.2 Examples of Regular Expressions -- 5.6.3 Advanced and Extended Regular Expression Rules -- Minimum and Maximum Match -- Internationalization -- Non-ASCII Values -- Character Classes, Collating Elements, and Equivalence Classes -- Tcl Commands Implementing Regular Expressions -- 5.6.4 Back to the Searching URLs -- 5.7 Creating a Procedure -- 5.7.1 The proc Command -- 5.7.2 A findUrl Procedure -- 5.7.3 Variable Scope -- 5.7.4 Global Information Variables -- 5.8 Making a Script -- 5.8.1 The Executable Script -- 5.9 Speed -- 5.9.1 Comparison of Execution Speeds (Linux Celeron @ 2.6 GHz) -- 5.10 Bottom Line -- 5.11 Problems -- 6 Complex Data Structures with Lists, Arrays and Dicts -- 6.1 Using the Tcl List -- 6.1.1 Manipulating Ordered Data with Lists -- 6.1.2 Manipulating Data with Keyed Lists -- 6.2 Using the Dict -- 6.2.1 Grouping Related Values -- 6.3 Using the Associative Array -- 6.4 Trees in Tcl -- 6.5 Tcl and SQL -- 6.5.1 SQL Basics -- 6.5.2 Using tdbc -- Manipulating Data -- 6.5.3 Using Referenced Tables -- Introspection into Databases -- 6.6 Performance -- 6.7 Bottom Line -- 6.8 Problems -- 7 Procedure Techniques -- 7.1 Arguments to Procedures -- 7.1.1 Variable Number of Arguments to a Procedure -- 7.1.2 Default Values for Procedure Arguments -- 7.2 Renaming or Deleting Commands -- 7.3 Getting Information About Procedures -- 7.4 Substitution and Evaluation of Strings -- 7.4.1 Performing Variable Substitution on a String -- 7.4.2 Evaluating a String as a Tcl Command -- 7.5 Working with Global and Local Scopes -- 7.5.1 Global and Local Scope -- 7.6 Making a Tcl Object -- 7.6.1 An Object Example -- 7.7 Bottom Line -- 7.8 Problems -- 8 Namespaces, Packages and Modules -- 8.1 Namespaces and Scoping Rules -- 8.1.1 Namespace Scope -- 8.1.2 Namespace Naming Rules. 8.1.3 Accessing Namespace Entities -- 8.1.4 Why Use Namespaces? -- 8.1.5 The namespace and variable Commands -- 8.1.6 Creating and Populating a Namespace -- 8.1.7 Namespace Nesting -- 8.1.8 Namespace Ensembles -- 8.2 Packages -- 8.2.1 How Packages Work -- 8.2.2 Internal Details: Files and Variables Used with Packages -- 8.2.3 Package Commands -- 8.2.4 Version Numbers -- 8.2.5 Package Cookbook -- Creating a Package -- Using a Tcl Package -- 8.3 TCL Modules -- 8.4 Namespaces and Packages -- 8.5 Hanoi with a Stack Namespace and Package -- 8.6 Conventions and Caveats -- 8.7 Bottom Line -- 8.8 Problems -- 9 Basic Object-Oriented Programming in Tcl -- 9.1 Creating a TclOO Class and Object -- 9.1.1 Constructor and Destructor -- 9.1.2 Methods -- Method Naming Convention -- Invoking Methods from Within Methods -- Registering Methods for Callbacks -- 9.1.3 Inheritance -- Method Chaining -- Inheritance -- Single Inheritance -- Multiple Inheritance -- Using Mixins -- Aggregation -- 9.1.4 Filters -- 9.2 Bottom Line -- 9.3 Problems -- 10 Advanced Object-Oriented Programming in Tcl -- 10.1 Modifying Classes and Objects -- 10.1.1 Modifying Classes -- Modifying Methods -- 10.1.2 Modifying Inheritance -- Adding a Superclass -- Mixing in a New Class -- 10.1.3 Modifying Class, Constructor, Variables and Destructor -- 10.1.4 Static Methods and Variables I -- 10.2 Modifying Objects -- 10.2.1 Changing an Object's Class -- 10.2.2 Defining Per-object Mixins -- 10.2.3 Adding a Method to an Object -- 10.3 Examining Classes and Objects -- 10.3.1 Evaluation of Chains -- 10.3.2 Examining Methods -- 10.3.3 Examining Inheritance -- 10.3.4 Getting a List of Base Classes -- 10.4 Examining Objects -- 10.5 Using TclOO with Callbacks -- 10.6 Adding New Functionality to TclOO -- 10.6.1 Static Variables II -- 10.6.2 Static Methods II -- 10.6.3 Aggregated Objects That Modify the Possessor. 10.6.4 Objects That Grow and Change -- 10.7 Bottom Line -- 10.8 Problems -- 11 Introduction to Tk Graphics -- 11.1 Creating a Widget -- 11.2 Conventions -- 11.2.1 Widget Naming Conventions -- 11.2.2 Color Naming Conventions -- 11.2.3 Dimension Conventions -- 11.3 Common Options -- 11.4 Determining and Setting Options -- 11.5 The Basic Widgets -- 11.6 Introducing Widgets: label, button, and entry -- 11.6.1 The label Widget -- 11.6.2 The button Widget -- 11.6.3 The entry Widget -- 11.6.4 Using Namespaces or TclOO with Widgets -- Using Namespace Scope with a Widget -- Using TclOO with a Widget -- 11.7 Application Layout: Geometry Managers and Container Widgets -- 11.7.1 Container Widgets: frame, labelframe, panedwindow -- The frame Widget -- The labelframe Widget -- The ttk::notebook Widget -- The panedwindow Widget -- 11.7.2 Widget Layout: place, pack, and grid -- The place Layout Manager -- The pack Layout Manager -- The grid Layout Manager -- Working Together -- 11.8 Selection Widgets: radiobutton, checkbutton, menu, and listbox -- 11.8.1 radiobutton and checkbutton -- radiobutton -- checkbutton -- 11.8.2 Pull-down Menus: menu, menubutton, and Menubars -- Menubars -- 11.8.3 Selection Widgets: listbox -- 11.9 Scrollbar -- 11.9.1 The Basic scrollbar -- 11.9.2 scrollbar Details -- 11.9.3 Intercepting scrollbar Commands -- 11.10 The scale Widget -- 11.11 New Windows -- 11.12 Interacting with the Event Loop -- 11.13 Scheduling the Future: after -- 11.13.1 Canceling the Future -- 11.14 Bottom Line -- 11.15 Problems -- 12 Using the canvas Widget -- 12.1 Overview of the canvas Widget -- 12.1.1 Identifiers and Tags -- 12.1.2 Coordinates -- 12.1.3 Binding -- 12.2 Creating a canvas Widget -- 12.3 Creating Displayable canvas Items -- 12.3.1 The Line Item -- 12.3.2 The Arc Item -- 12.3.3 The Rectangle Item -- 12.3.4 The Oval Item -- 12.3.5 The Polygon Item. Tk toolkit. http://id.loc.gov/authorities/names/n94001650 Tk toolkit fast Tcl (Computer program language) http://id.loc.gov/authorities/subjects/sh94000154 Tcl (Langage de programmation) COMPUTERS Programming Languages JavaScript. bisacsh COMPUTERS Programming Languages VBScript. bisacsh Tcl (Computer program language) fast |
subject_GND | http://id.loc.gov/authorities/names/n94001650 http://id.loc.gov/authorities/subjects/sh94000154 |
title | Tcl/Tk : a developer's guide / |
title_auth | Tcl/Tk : a developer's guide / |
title_exact_search | Tcl/Tk : a developer's guide / |
title_full | Tcl/Tk : a developer's guide / Clif Flynt. |
title_fullStr | Tcl/Tk : a developer's guide / Clif Flynt. |
title_full_unstemmed | Tcl/Tk : a developer's guide / Clif Flynt. |
title_short | Tcl/Tk : |
title_sort | tcl tk a developer s guide |
title_sub | a developer's guide / |
topic | Tk toolkit. http://id.loc.gov/authorities/names/n94001650 Tk toolkit fast Tcl (Computer program language) http://id.loc.gov/authorities/subjects/sh94000154 Tcl (Langage de programmation) COMPUTERS Programming Languages JavaScript. bisacsh COMPUTERS Programming Languages VBScript. bisacsh Tcl (Computer program language) fast |
topic_facet | Tk toolkit. Tk toolkit Tcl (Computer program language) Tcl (Langage de programmation) COMPUTERS Programming Languages JavaScript. COMPUTERS Programming Languages VBScript. |
url | https://search.ebscohost.com/login.aspx?direct=true&scope=site&db=nlebk&AN=453796 |
work_keys_str_mv | AT flyntclif tcltkadevelopersguide |