r - 那里真的没有适当的 R 消息框功能吗?
问题描述
我正在 Windows 7 上开发一个 R Shiny 应用程序,并希望它以某种方式与用户交流,主要以消息框的形式输出一些优化结果。
我首先尝试winDialog()
了函数,但它似乎只有三个参数,因此它并不是真正可定制的。我本来想至少给出现的消息框一个正确的标题而不是基本的信息标题,但似乎没有这样的论点。此外,我也不喜欢winDialog()
完全依赖平台;如果可能的话,如果我将应用程序提供给使用 Apple 产品的人,我会坚持使用不会崩溃的功能......
然后我尝试使用包中的tkmessagebox()
功能,tcltk
但遗憾的是每次消息框都出现在正在运行的应用程序后面,这首先给我的印象是我的应用程序突然冻结,直到我最终发现消息框隐藏在应用程序后面。这对用户来说非常非常不切实际,每次都必须最小化应用程序窗口,所以这也没有解决我的问题。
winDialog(type ="ok", message = paste("Initial profit value is: ", toString(MAX_PROFIT)) )
library(tcltk)
tkmessageBox(title = "Initial profit calculation", message = toString(MAX_PROFIT), icon = "info", type = "ok")
我还遇到了去年在 StackOverflow 上的一个线程,提到了与该tkmessageBox
函数完全相同的问题(您可以在此处找到该线程:MessageBox in R)。显然,对于消失的 R 消息框似乎没有任何直接的解决方案,或者至少到目前为止我还没有找到任何信息。
解决方案
我使用闪亮警报包。它运作良好,并且完全符合要求。这是一个简洁的链接:https ://deanattali.com/blog/shinyalert-package/
此外,还有一个模态对话框选项。这就像浏览器中要求允许向您发送通知的消息框一样。链接:https ://shiny.rstudio.com/reference/shiny/latest/modalDialog.html
推荐阅读
- python - 我如何知道子进程是否已启动?
- java - Xamarin、Android Activity、IntentFilter、打开表单视图
- apexcharts - 如何在页面加载时设置 ApexCharts 高度,然后在滚动到视图时渲染图表
- qt - QML从消息对话框中隐藏问号
- elasticsearch - 在 Elasticsearch 试用版中尝试 Kerberos 身份验证
- arm - IAR EW:添加新设备
- php - 使用带有分页的 $wp_query 进行搜索时的 URL 错误
- ajax - Ajax 调用未在控制器中输入方法
- .net - 如何更改单元格中的数据,将其与同一行内另一个单元格的值进行比较?
- sql - 根据 if 条件更改表