Tk_Init.3
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
源码类别:

通讯编程

开发平台:

Visual C++

  1. '"
  2. '" Copyright (c) 1995-1996 Sun Microsystems, Inc.
  3. '"
  4. '" See the file "license.terms" for information on usage and redistribution
  5. '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  6. '" 
  7. '" RCS: @(#) $Id: Tk_Init.3,v 1.4 2000/09/07 17:38:16 hobbs Exp $
  8. '" 
  9. .so man.macros
  10. .TH Tk_Init 3 8.0 Tk "Tk Library Procedures"
  11. .BS
  12. .SH NAME
  13. Tk_Init, Tk_SafeInit - add Tk to an interpreter and make a new Tk application.
  14. .SH SYNOPSIS
  15. .nf
  16. fB#include <tk.h>fR
  17. .sp
  18. int
  19. fBTk_InitfR(fIinterpfR)
  20. .sp
  21. int
  22. fBTk_SafeInitfR(fIinterpfR)
  23. .SH ARGUMENTS
  24. .AP Tcl_Interp *interp in
  25. Interpreter in which to load Tk.  Tk should not already be loaded
  26. in this interpreter.
  27. .BE
  28. .SH DESCRIPTION
  29. .PP
  30. fBTk_InitfR is the package initialization procedure for Tk.
  31. It is normally invoked by the fBTcl_AppInitfR procedure
  32. for an application or by the fBloadfR command.
  33. fBTk_InitfR adds all of Tk's commands to fIinterpfR
  34. and creates a new Tk application, including its main window.
  35. If the initialization is successful fBTk_InitfR returns
  36. fBTCL_OKfR;  if there is an error it returns fBTCL_ERRORfR.
  37. fBTk_InitfR also leaves a result or error message
  38. in fIinterp->resultfR.
  39. .PP
  40. If there is a variable fBargvfR in fIinterpfR, fBTk_InitfR
  41. treats the contents of this variable as a list of options for the
  42. new Tk application.
  43. The options may have any of the forms documented for the
  44. fBwishfR application (in fact, fBwishfR uses Tk_Init to process
  45. its command-line arguments).
  46. .PP
  47. fBTk_SafeInitfR is identical to fBTk_InitfR except that it removes
  48. all Tk commands that are considered unsafe.  Those commands and the
  49. reasons for their exclusion are:
  50. .TP
  51. fBbellfR
  52. Continuous ringing of the bell is a nuisance.
  53. .TP
  54. fBclipboardfR
  55. A malicious script could replace the contents of the clipboard with
  56. the string fB"rm -r *"fR and lead to surprises when the contents of
  57. the clipboard are pasted.
  58. .TP
  59. fBgrabfR
  60. Grab can be used to block the user from using any other applications.
  61. .TP
  62. fBmenufR
  63. Menus can be used to cover the entire screen and to steal input from
  64. the user.
  65. .TP
  66. fBselectionfR
  67. See clipboard.
  68. .TP
  69. fBsendfR
  70. Send can be used to cause unsafe interpreters to execute commands.
  71. .TP
  72. fBtkfR
  73. The tk command recreates the send command, which is unsafe.
  74. .TP
  75. fBtkwaitfR
  76. Tkwait can block the containing process forever
  77. .TP
  78. fBtoplevelfR
  79. Toplevels can be used to cover the entire screen and to steal input
  80. from the user.
  81. .TP
  82. fBwmfR
  83. If toplevels are ever allowed, wm can be used to remove decorations,
  84. move windows around, etc.
  85. .SH KEYWORDS
  86. safe, application, initialization, load, main window