Book Image

Tcl/Tk 8.5 Programming Cookbook

Book Image

Tcl/Tk 8.5 Programming Cookbook

Overview of this book

With Tcl/Tk, you can create full-featured cross-platform applications in a simple and easy-to-understand way without any expensive development package; the only tools required are a simple text editor and your imagination. This practical cookbook will help you to efficiently interact with editors, debuggers, and shell type interactive programs using Tcl/Tk 8. This cookbook will comprehensively guide you through practical implementation of Tcl/Tk 8.5 commands and tools. This book will take you through all the steps needed to become a productive programmer in Tcl/Tk 8. Right from guiding you through the basics to creating a stand-alone application, it provides complete explanation of all the steps along with handy tips and tricks. The book begins with an introduction to the Tcl shell, syntax, variables, and programming best practices in the language. It then explores procedures and the flow of events with control constructs followed by advanced error trapping and recovery. From Chapter 4, a detailed study of string expressions and handling enables you to handle various string functions and use lists to expand the string functionality. The book then discusses in-depth the Tcl Dictionary and how to utilize it to store and retrieve data. File operations and Tk GUI handling are covered extensively along with a developing a real-world address book application to practice the concepts learned.
Table of Contents (20 chapters)
Tcl/Tk 8.5 Programming Cookbook
Credits
About the Author
Acknowledgment
About the Reviewers
www.PacktPub.com
Preface

Selecting a directory and file


In the following example, we will see how simple it is to combine the functionality of the tk_chooseDirectory dialog (which returns only a directory listing) with the tk_getOpenFile dialog (which returns a full file path) to assign the directory in use and the file selected to separate variables. This will be accomplished by the Tcl file command in combination with the tk_getOpenFile dialog. I use this to allow a user to select or define a configuration file and default directory without requiring the use of two separate dialogs.

How to do it…

In the following example we display a File Selection dialog box and assign the return value to a named variable as well as strip out the directory and assign this to a second named variable. Enter the following commands:

1 % set response [tk_getOpenFile -filetypes $types]

You should now see the following dialog displayed.

Note that in your shell window the input line is no longer active. This is due to the fact that the...