问题标签 [jetbrains-compose]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
47 浏览

kotlin - 单击 Compose Multiplatform 中的其他位置时如何清除 BasicTextField 的焦点?

我有一个BasicTextField用于桌面的 Jetbrains Compose Multiplatform。当我单击它时,TextField 获得焦点并变为可编辑。但是,当我单击应用程序中的其他位置时,焦点不会丢失,并且该字段仍然可以编辑,就像我刚刚单击它一样。

我知道这种行为是正常的和有意的。尽管如此,当用户点击其他地方时,我希望 TextField 变得不集中,无论它是可点击的还是不可点击的组合。

我如何实现这一目标?

0 投票
0 回答
94 浏览

kotlin - 如何在图像或可组合物中环绕文本?

如何在图像或可组合物中环绕文本?
类似于Jetpack Compose 中的FlowTextView

我想知道是否有可能留出一定的空间,这样如果文本太长,它就会断行,并且在空闲空间下完全正常地继续书写,而不会覆盖空间。

我有这个:

在此处输入图像描述

我想做这个:

在此处输入图像描述

我尝试使用 compose for desktop 来执行此操作,但应该与 android jetpack compose 相同。
我不知道现在是否可能,但我找不到操作Text可组合的方法。
找到PlaceHolderTextLayoutInput但我不知道如何使用它。也许不可能。

0 投票
0 回答
19 浏览

kotlin - Compose 插件仅创建 Dmg 分发

我有用 compose 编写的桌面应用程序,我在 Mac 上工作。mac 版本一切正常,但我无法为 linux 生成一个。

无论我在 targetFormats 中指定什么,它都只会生成 Mac 应用程序。我发现调试日志中唯一的事情是跳过了这个任务(即使我正在从干净状态运行任务):

是否可以在 Mac 上创建 linux 版本?缺了点什么?

0 投票
0 回答
25 浏览

java - 撰写桌面应用程序崩溃:ClassNotFoundException:java.net.http.HttpClient

我想在撰写桌面应用程序中使用 java.net.http 包。当我在 IntelliJ 中运行应用程序时,一切正常。但是当我使用 packageDeb 构建一个 .deb 文件并通过 apt 安装它时,应用程序由于java.lang.ClassNotFoundException: java.net.http.HttpClient单击“开始”按钮而崩溃。

这是示例代码:

还有 build.gradle.kts:

有想法该怎么解决这个吗?java.net.http 应该在 Java 16 中可用。

提前致谢。

0 投票
1 回答
35 浏览

kotlin - Jetbrains Compose 中的特定模块路由在 kotlin 桌面应用程序上使用 Decompose

我在桌面应用程序项目中使用 JetBrains Compose 框架,并且对于路由,他们在官方文档arkivanov-Decompose库中建议用于视图之间的路由(可组合)。

就像一个魅力,但你拥有的视图越多,你的路由文件就越长。我想知道我是否可以让它看起来更好一点。

当我们可以在模块内定义路由时,我只熟悉 Angular 中的 Web 路由。在那里,每个模块都可以有一个module-routes.ts文件,如下所示:

这样我就可以在模块内部管理与模块相关的所有元素,并将路由导入到全局路由器模块中。

在分解中,我试图按照这些思路做一些事情,所以我可以将某些视图封装在它们各自的模块中(一些视图只与同一模块的视图交互,但我很难让我的路由器分布在它们之间模块。有没有人知道怎么做?

我有我的路由器和我的孩子:

和我的孩子工厂:

我可以从模块中获取这些配置以使其更清洁吗?我可以为不同类型的用户(管理员、普通用户等)设置不同的路由吗?

0 投票
0 回答
9 浏览

compose-desktop - 使用“verticalScroll”修饰符时撰写桌面“ClassNotFoundException”

ClassNotFoundException使用verticalScroll修饰符时出现错误,使用 LazyColumn 时也出现相同的错误。

我正在使用撰写版本1.0.1,但它与1.0.0

谁能帮我解决这个问题?

谢谢

0 投票
1 回答
13 浏览

kotlin - 我可以从 Compose Multiplatform 中的单独按钮更改组件的值吗?

我正在尝试制作一个桌面应用程序,允许您搜索存储在单独目录中的 Kotlin 类中的多个预定义位置。为此,我使用了反射compose-jb库。

我遇到的问题是,当我在输入要搜索的标签后按下搜索按钮时,我无法弄清楚如何更新一列框(位于另一个框组件中)以进行更改。

我的代码在下面(用于 Main.kt 文件)描述了整个桌面应用程序。

我试图更新包含与任何搜索条件匹配的所有项目的 Box 的值,但我遇到了许多问题,例如我在其中设置新值的“onClick”函数“状态”变量(存储所有匹配项)不是可组合函数,因此我无法更改值。

我将如何完成从另一个组件(例如按钮)更改组件(例如框)的值?