PtContainerGiveFocus (widget, event)
A container-type widget.
The event to pass to both the object losing focus and the widget gaining focus.
This function gives focus to the widget. The event argument is used to pass a known event to both the object losing focus and the widget, which is gaining focus. If the event is not important to you, pass a new instance of the PhEvent class.
This example, ex_PtContainerGiveFocus.g, is included in the product distribution.
#!/usr/cogent/bin/phgamma /* This example puts up a window with 10 button widgets. The focus is moved through the buttons by a timer calling the change_focus() function every 0.2 sec. The appearance of the buttons (a rendered focus) changes when they receive focus. */ require_lisp("PhotonWidgets.lsp"); PtInit(nil); win = new(PtWindow); max = 10; button_array = make_array(0); for(i=0;i<max;i++) { button_array[i] = new(PtButton); button_array[i].text_string = string("But",i); button_array[i].SetPos((i % 5) * 35, div(i,5) * 30); PtRealizeWidget(button_array[i]); } PtRealizeWidget(win); current_focus = 0; function change_focus () { PtContainerGiveFocus(button_array[current_focus],new(PhEvent)); current_focus = (current_focus + 1) % max; } every(0.2,#change_focus()); PtMainLoop();
Copyright © 1995-2010 by Cogent Real-Time Systems, Inc. All rights reserved.