【问题标题】:How to align text on elmentary label widget?如何对齐基本标签小部件上的文本?
【发布时间】:2014-07-15 08:17:48
【问题描述】:

我想将文本对齐到elm_label 小部件的中心。我找不到任何关于文本对齐作为 evas 对象文本函数或 elm_label 函数的函数。另外,我找不到可以在标签上获取文本大小(绝对像素或相对大小)的函数。

我试过elm_object_style_setmarker,它在标签中心显示粗体文本,但字体太小(小于默认样式)。 (而且我不想在文本上加粗。)

如何将文本与标签的中心对齐?

【问题讨论】:

  • 这不是关于 qt 小部件的问题。为什么你建议阅读 qt doc?而且我在 evas doc 上也找不到 setAlignment() 之类的功能。
  • 对不起,这是一个错误;)我删除了它

标签: alignment tizen efl


【解决方案1】:

您可以使用类似 HTML 的标记来自定义您希望在 elm_label 中显示文本的方式。

要将文本居中对齐,您可以使用带有值 center<align> 标记标签。

std::string text = "<align = center> TEXT TO DISPLAY </align>";
Evas_Object *label = elm_label_add(parent);
elm_object_text_set(label,text.c_str());
evas_object_show(label);

您还可以使用font_weightfont_style 等其他标签来自定义显示文本。可以找到所有可能标签的列表here

【讨论】:

    【解决方案2】:

    您可以通过evas_object API 设置标签的对齐方式。您正在寻找的可能是:

    evas_object_size_hint_align_set(label, 0.5, EVAS_HINT_FILL);
    evas_object_size_hint_weight_set(label, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    

    0.5 居中,您可以尝试 0.0 左对齐,1.0 右对齐。

    【讨论】:

      猜你喜欢
      • 2011-08-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-06
      • 2020-11-15
      • 1970-01-01
      • 2011-11-30
      • 2018-11-08
      相关资源
      最近更新 更多