2023-09-09 15:52:32 +03:00
|
|
|
|
use std, http, forms
|
2016-09-24 15:45:16 +03:00
|
|
|
|
|
|
|
|
|
chatHistory = newLabel("<html>Чат с самоботом<br>")
|
|
|
|
|
messageField = newTextField()
|
|
|
|
|
sendButton = newButton("Отправить")
|
|
|
|
|
|
|
|
|
|
messageField.onAction(::onSend)
|
|
|
|
|
sendButton.onClick(::onSend)
|
|
|
|
|
def onSend() {
|
|
|
|
|
text = messageField.getText()
|
|
|
|
|
if (length(text) == 0) return 0
|
|
|
|
|
messageField.setText("")
|
|
|
|
|
chatHistory.setText(chatHistory.getText() + "<br><b>вы</b> > " + text)
|
2019-01-06 18:36:53 +02:00
|
|
|
|
thread(::http, "https://annimon.com/json/bot.php", "POST", {"text": text}, def(answer) {
|
2016-09-24 15:45:16 +03:00
|
|
|
|
chatHistory.setText(chatHistory.getText() + "<br><b>бот</b> > " + answer)
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
messagePanel = newPanel()
|
|
|
|
|
messagePanel.setLayout(boxLayout(messagePanel, BoxLayout.LINE_AXIS))
|
|
|
|
|
messagePanel.add(messageField)
|
|
|
|
|
messagePanel.add(sendButton)
|
|
|
|
|
|
|
|
|
|
mainPanel = newPanel(borderLayout(10, 10))
|
|
|
|
|
mainPanel.setPreferredSize(400, 250)
|
|
|
|
|
mainPanel.add(chatHistory, BorderLayout.CENTER)
|
|
|
|
|
mainPanel.add(messagePanel, BorderLayout.SOUTH)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
window = newWindow("Чат с самоботом")
|
|
|
|
|
window.setMinimumSize(200, 220)
|
|
|
|
|
window.setLocationByPlatform()
|
|
|
|
|
window.add(mainPanel)
|
|
|
|
|
window.pack()
|
|
|
|
|
window.setVisible()
|