gradio/demo/tictactoe/run.py
aliabid94 95bf08b2e2
Adding the .select event listener (#3399)
* changes

* changes

* changes

* changes

* changes

* changes

* changs

* changes

* changes

* changes

* changes

* changes

* changes

* preview

* fix notebook

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* Add type hints (#3403)

Co-authored-by: aliabid94 <aabid94@gmail.com>

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* changes

* change

* changes

* changes

* changes

* changes

* changes

* changes

* Update gradio/helpers.py

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>

* doc update

* changes

* changes

* changes

---------

Co-authored-by: Abubakar Abid <abubakar@huggingface.co>
Co-authored-by: Freddy Boulton <alfonsoboulton@gmail.com>
2023-03-13 17:12:41 -07:00

17 lines
512 B
Python

import gradio as gr
with gr.Blocks() as demo:
turn = gr.Textbox("X", interactive=False, label="Turn")
board = gr.Dataframe(value=[["", "", ""]] * 3, interactive=False, type="array")
def place(board, turn, evt: gr.SelectData):
if evt.value:
return board, turn
board[evt.index[0]][evt.index[1]] = turn
turn = "O" if turn == "X" else "X"
return board, turn
board.select(place, [board, turn], [board, turn])
if __name__ == "__main__":
demo.launch()