Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Tk_Main(3)		     Tk	Library	Procedures		    Tk_Main(3)

______________________________________________________________________________

NAME
       Tk_Main - main program for Tk-based applications

SYNOPSIS
       #include	<tk.h>

       Tk_Main(argc, argv, appInitProc)

ARGUMENTS
       int argc	(in)				  Number of elements in	argv.

       char *argv[] (in)			  Array	 of strings containing
						  command-line	arguments.  On
						  Windows,  when  using	-DUNI-
						  CODE,	 the  parameter	  type
						  changes to wchar_t *.

       Tcl_AppInitProc *appInitProc (in)	  Address  of  an application-
						  specific initialization pro-
						  cedure.   The	value for this
						  argument is usually  Tcl_Ap-
						  pInit.
______________________________________________________________________________

DESCRIPTION
       Tk_Main	acts  as  the  main  program  for  most	Tk-based applications.
       Starting	with Tk	4.0 it is not called main anymore because it  is  part
       of the Tk library and having a function main in a library (particularly
       a shared	library) causes	problems on many systems.  Having main in  the
       Tk library would	also make it hard to use Tk in C++ programs, since C++
       programs	must have special C++ main functions.

       Normally	each application contains a  small  main  function  that  does
       nothing but invoke Tk_Main.  Tk_Main then does all the work of creating
       and running a wish-like application.

       When it is has finished its own initialization, but before it processes
       commands,  Tk_Main  calls  the procedure	given by the appInitProc argu-
       ment.  This procedure provides a	"hook" for the application to  perform
       its own initialization, such as defining	application-specific commands.
       The procedure must have an interface that matches the type Tcl_AppInit-
       Proc:
	      typedef int Tcl_AppInitProc(
		      Tcl_Interp *interp);
       AppInitProc is almost always a pointer to Tcl_AppInit; for more details
       on this procedure, see the documentation	for Tcl_AppInit.

       Tk_Main functions much the same as Tcl_Main.   In  particular,  Tk_Main
       supports	 both  an interactive mode and a startup script	mode, with the
       file name and encoding of a startup script under	 the  control  of  the
       Tcl_SetStartupScript  and  Tcl_GetStartupScript	routines.  However  it
       calls Tk_MainLoop after processing any supplied script, and in interac-
       tive  uses events registered with Tcl_CreateFileHandler to process user
       input.

SEE ALSO
       Tcl_DoOneEvent(3)

KEYWORDS
       application-specific initialization, command-line arguments, main  pro-
       gram

Tk				      4.0			    Tk_Main(3)

NAME | SYNOPSIS | ARGUMENTS | DESCRIPTION | SEE ALSO | KEYWORDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Tk_Main.tk86&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help