GVKun编程网logo

在JEditorPane中获取可见文本(jtextfield获取内容)

21

这篇文章主要围绕在JEditorPane中获取可见文本和jtextfield获取内容展开,旨在为您提供一份详细的参考资料。我们将全面介绍在JEditorPane中获取可见文本的优缺点,解答jtextf

这篇文章主要围绕在JEditorPane中获取可见文本jtextfield获取内容展开,旨在为您提供一份详细的参考资料。我们将全面介绍在JEditorPane中获取可见文本的优缺点,解答jtextfield获取内容的相关问题,同时也会为您带来asp.net-mvc – EditorTemplates / Object.cshtml使用EditorFor()而不是Editor()?、Gitee 推荐 | 基于 Ueditor 的富文本编辑器 Neditor、html – 有没有办法将css文件附加到jEditorPane?、HttpClient-Cookies-和JEditorPane的实用方法。

本文目录一览:

在JEditorPane中获取可见文本(jtextfield获取内容)

在JEditorPane中获取可见文本(jtextfield获取内容)

我在JScrollPane中有一个JeditorPane。在应用程序中的某些点,我想检索在scrollPane中可见的文本(当前正在显示的文本)以及仅此文本。有没有办法做到这一点?

谢谢,

艾略特

答案1

小编典典

您可以使用视口来获取视图的位置和大小。

JViewport viewport = scrollPane.getViewport();Point startPoint = viewport.getViewPosition();Dimension size = viewport.getExtentSize();Point endPoint = new Point(startPoint.x + size.width, startPoint.y + size.height);

一旦知道了视口的起点/终点,就可以使用:

int start = editorPane.viewToModel( startPoint );int end = editorPane.viewToModel( endPoint );

一旦知道了文本的偏移量,就可以从组件中获取文本:

String text = editorPane.getText(start, end - start);

没有代码经过测试。

asp.net-mvc – EditorTemplates / Object.cshtml使用EditorFor()而不是Editor()?

asp.net-mvc – EditorTemplates / Object.cshtml使用EditorFor()而不是Editor()?

我正在尝试创建一个复制 Html.EditorForModel()的通用编辑器模板,以便以后自定义和构建. Brad Wilson’s template变得非常接近,但我发现当ViewData(或ViewBag)和模型中存在相同的密钥时,它会窒息.例如,如果视图模型也具有Title属性,则ViewBag.Title会导致问题.

我学习了here,使用强类型助手(即Html.EditorFor(x => x.Title)而不是Html.Editor(“Title”)似乎有所帮助.所以我试图修改Brad的模板,但我遇到了砖墙,因为到目前为止我没有尝试过任何工作.我无法弄清楚如何在我不知道模型类型的上下文中使用强类型帮助器,例如编辑器模板.

有没有办法像Brad那样创建一个Object模板,但是使用强类型的助手(即LabelFor,EditorFor,ValidatorMessageFor)而不是弱类型的助手(即Label,Editor,ValidatorMessage)?

谢谢.

解决方法

我通过稍微迂回的方式解决了这个问题,方法是在调用@Html.Editor之前删除ViewData,然后再将其放回去.

Object.cshtml:

object oldViewData = null;
        var hasConflictingViewData = ViewData.TryGetValue(prop.PropertyName,out oldViewData);

        if (hasConflictingViewData)
        {
            ViewData.Remove(prop.PropertyName);
        }

        @Html.Editor(prop.PropertyName)

        if (hasConflictingViewData)
        {
            ViewData.Add(prop.PropertyName,oldViewData);
        }

我能想到的唯一另一个选择是使用大量的反射来通常使用运行时类型调用EditorFor,并传入相关属性的表达式.

Gitee 推荐 | 基于 Ueditor 的富文本编辑器 Neditor

Gitee 推荐 | 基于 Ueditor 的富文本编辑器 Neditor

Neditor 是基于 Ueditor 的一款现代化界面的富文本编辑器。

 

html – 有没有办法将css文件附加到jEditorPane?

html – 有没有办法将css文件附加到jEditorPane?

足够简单的问题:我有一个包含 HTML的字符串,正在传递给JEditorPane以供用户使用.

我可以附加CSS文件(或包含CSS规则的字符串)以允许更具体的文本样式吗?

解决方法

默认情况下,HTMLEditorKit会查找一个文件default.css – 但我不知道在哪里.

或者,这应该工作:

StyleSheet ss = new StyleSheet();
ss.importStyleSheet(styleSheetURL);
HTMLEditorKit kit = (HTMLEditorKit)jEditorPane.getEditorKit();
kit.setStyleSheet(ss);

但请注意,HTMLEditorKit仅支持limited subset的CSS 1.

HttpClient-Cookies-和JEditorPane

HttpClient-Cookies-和JEditorPane

我已经成功使用httpclient成功登录到站点,并打印出启用该登录的cookie。但是,我现在陷入困境,因为我想使用.setPage(url)函数在JEditorPane中显示后续页面。但是,当我这样做并使用Wireshark分析我的GET请求时,我看到用户代理不是我的httpclient而是以下内容:

用户代理:Java / 1.6.0_17

GET请求(在侧面jeditorpane的setPage(URL url)方法中编码)没有使用httpclient检索的cookie。我的问题是-
如何以某种方式转移通过httpclient接收到的cookie,以便我的JEditorPane可以显示该站点的URL?我开始认为这是不可能的,我应该尝试使用普通的Java
URLconnection等进行登录,但宁愿坚持使用httpclient,因为它更加灵活(我认为)。大概我还是对饼干有问题??

我曾考虑过扩展JEditorPane类并覆盖setPage(),但是我不知道应该输入的实际代码,因为似乎无法找出setPage()的实际工作方式。

任何帮助/建议将不胜感激。

戴夫

今天关于在JEditorPane中获取可见文本jtextfield获取内容的讲解已经结束,谢谢您的阅读,如果想了解更多关于asp.net-mvc – EditorTemplates / Object.cshtml使用EditorFor()而不是Editor()?、Gitee 推荐 | 基于 Ueditor 的富文本编辑器 Neditor、html – 有没有办法将css文件附加到jEditorPane?、HttpClient-Cookies-和JEditorPane的相关知识,请在本站搜索。

本文标签: