GVKun编程网logo

如何在没有 CSS 的情况下更改列标题的字体(没有css样式)

1

本文的目的是介绍如何在没有CSS的情况下更改列标题的字体的详细情况,特别关注没有css样式的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解如何在没有CSS的情况下更改

本文的目的是介绍如何在没有 CSS 的情况下更改列标题的字体的详细情况,特别关注没有css样式的相关信息。我们将通过专业的研究、有关数据的分析等多种方式,为您呈现一个全面的了解如何在没有 CSS 的情况下更改列标题的字体的机会,同时也不会遗漏关于angular – 如何在没有* ngIf的情况下渲染ng-container或ng-template?、C / Linux:如何在没有`getlogin`的情况下获取用户登录名、c# – 如何在没有*具有MethodInfo的情况下使用MSIL *在实例上调用方法?、CSS 介绍、什么是 CSS、为什么我们使用 CSS 以及 CSS 如何描述 HTML 元素的知识。

本文目录一览:

如何在没有 CSS 的情况下更改列标题的字体(没有css样式)

如何在没有 CSS 的情况下更改列标题的字体(没有css样式)

如何解决如何在没有 CSS 的情况下更改列标题的字体

我希望能够在不使用 CSS 的情况下更改 JavaFX 的 TableView 的列标题的字体。我在网上做了很多搜索,所有的解决方案似乎都只使用 CSS。我想更改的字体是自定义字体,在 CSS 中为 JavaFX 加载自定义字体时出现了一个错误,我在搜索了数十个链接后似乎无法修复该错误。

我尝试的 CSS 方法是

  1. @font-face {
  2. font-family: ''8bitoperator'';
  3. src: url(''assets/8bitoperator.ttf'');
  4. }
  5. .table-view .column-header.foo .label {
  6. -fx-text-fill: white;
  7. -fx-font-size: 0.13%; /* arbitrary value */
  8. -fx-font-family: ''8bitoperator'';
  9. }

遇到 loadStylesheetUnPrivileged 错误。我程序中的所有其他样式都是通过 Javafx 而不是 CSS,所以我想保持这一点。

感谢任何帮助。

解决方法

我不确定您当前的样式表问题。但是,如果您正在寻找一种以编程方式更新列标题字体的方法,下面是一种方法。话虽如此,还有许多其他方法。

总体思路是:你想要的节点,不能通过任何通用 API 访问。所以我们在表格视图完全渲染时查找节点。节点的“needsLayout”属性在完全呈现时将变为 false。因此,如果您依赖该属性和一个不能多次运行的额外属性,您可以使用“lookupAll”方法来获取您的需求。

  1. import javafx.animation.AnimationTimer;
  2. import javafx.application.Application;
  3. import javafx.geometry.Insets;
  4. import javafx.scene.Scene;
  5. import javafx.scene.control.*;
  6. import javafx.scene.layout.Priority;
  7. import javafx.scene.layout.Region;
  8. import javafx.scene.layout.VBox;
  9. import javafx.scene.text.Font;
  10. import javafx.stage.Stage;
  11. import java.util.concurrent.atomic.AtomicBoolean;
  12. public class ColumnHeaderCustomFontDemo extends Application {
  13. boolean fontsLoaded = false;
  14. int i = 1;
  15. @Override
  16. public void start(Stage primaryStage) throws Exception {
  17. TableView<Person> tableView = new TableView<>();
  18. TableColumn<Person,String> fnCol = new TableColumn<>("First Name");
  19. fnCol.setPrefWidth(120);
  20. fnCol.setId("firstColumn");
  21. TableColumn<Person,String> lnCol = new TableColumn<>("Last Name");
  22. lnCol.setId("lastColumn");
  23. lnCol.setVisible(false);
  24. TableColumn<Person,String> cityCol = new TableColumn<>("City");
  25. cityCol.setId("cityColumn");
  26. tableView.getColumns().addAll(fnCol,lnCol,cityCol);
  27. tableView.needsLayoutProperty().addListener((obs,old,needsLayout) -> {
  28. if (!needsLayout) {
  29. AtomicBoolean updateLayout = new AtomicBoolean();
  30. tableView.lookupAll(".column-header").stream().map(node -> (Region) node).forEach(column -> {
  31. if (column.getProperties().get("fontLoaded") == null) {
  32. switch (column.getId()) {
  33. case "firstColumn":
  34. updateFont(column,"Calibri",20);
  35. updateLayout.set(true);
  36. break;
  37. case "lastColumn":
  38. updateFont(column,"Verdana",10);
  39. updateLayout.set(true);
  40. break;
  41. case "newColumn":
  42. updateFont(column,25);
  43. updateLayout.set(true);
  44. break;
  45. }
  46. column.getProperties().put("fontLoaded",true);
  47. }
  48. });
  49. if (updateLayout.get()) {
  50. // A timer to execute only once in the next pulse.
  51. new AnimationTimer(){
  52. int count = 0;
  53. @Override
  54. public void handle(long now) {
  55. if(count>1){
  56. tableView.requestLayout();
  57. stop();
  58. }
  59. count++;
  60. }
  61. }.start();
  62. }
  63. }
  64. });
  65. CheckBox showLastColumn = new CheckBox("Show LastName column");
  66. showLastColumn.selectedProperty().addListener((obs,val) -> lnCol.setVisible(val));
  67. Button addColumn = new Button("Add Column");
  68. addColumn.setOnAction(e -> {
  69. TableColumn<Person,String> newCol = new TableColumn<>("Column " + i++);
  70. newCol.setId("newColumn");
  71. tableView.getColumns().add(newCol);
  72. });
  73. VBox root = new VBox();
  74. root.setSpacing(10);
  75. root.setPadding(new Insets(10));
  76. root.getChildren().addAll(showLastColumn,addColumn,tableView);
  77. VBox.setVgrow(tableView,Priority.ALWAYS);
  78. Scene sc = new Scene(root,500,500);
  79. primaryStage.setScene(sc);
  80. primaryStage.setTitle("ColumnHeader Custom Font");
  81. primaryStage.show();
  82. }
  83. private void updateFont(Region column,String fontName,int fontSize) {
  84. column.lookupAll(".label").stream().map(node -> (Label) node).forEach(label -> label.setFont(new Font(fontName,fontSize)));
  85. }
  86. class Person {
  87. // TableView item
  88. }
  89. }

angular – 如何在没有* ngIf的情况下渲染ng-container或ng-template?

angular – 如何在没有* ngIf的情况下渲染ng-container或ng-template?

我需要将tappable指令添加到自定义组件内的离子卡组件.我使用@input()myInputBool,类似于:

<ng-container *ngIf="myInputBool">
    <ion-card tappable>
        <ng-container render="myContent"></ng-container>
    </ion-card>
</ng-container>

<ng-container *ngIf="!myInputBool">
    <ion-card tappable>
        <ng-container render="myContent"></ng-container>
    </ion-card>
</ng-container>

<ng-container #myContent>
    This is my content
</ng-container>

当然它不起作用,因为没有“渲染”选项.到目前为止,我的解决方法是在ng-container中添加一个不存在的变量

<ng-container *ngIf="thisVariableDoesNotExist else myContent"> </ng-container>

但它感觉很糟糕和黑客.有更好的方法吗?

解决方法

我会使用ngTemplateOutlet而不是render选项:

<ng-container *ngTemplateOutlet="myContent"></ng-container>

也可以看看

> https://angular.io/api/common/NgTemplateOutlet#how-to-use

C / Linux:如何在没有`getlogin`的情况下获取用户登录名

C / Linux:如何在没有`getlogin`的情况下获取用户登录名

我需要在C程序中检索用户的用户名.我知道getlogin和getlogin_r.但我的程序有一个重定向的标准输入(因为一些分叉).

我面临的问题在联机帮助页中说明:

Note that glibc does not follow the POSIX specification and uses stdin
instead of /dev/tty. A bug. (Other recent systems,like SunOS 5.8
and HP-UX 11.11 and FreeBSD 4.8 all return the login name also when
stdin is redirected).

有没有其他方法可以检索用户名?

解决方法

使用 getresuid(2)或一些更具体的id检索函数来获取你想要的id(真实,有效或保存集)(你可能想要RUID,如果你想模仿getlogin,在这种情况下你可以简单地调用getuid并忘记关于有效和已保存集合的uid),然后使用 getpwuid(3)或其可重入对应方将其转换为用户标识字符串.

getenv(“USER”)可能会给你相同的结果,但如果你想要真正的安全性,就不能依赖它.

从技术上讲,当stdin是您的控制终端时,所有这些可能与getlogin获得的结果不同.如果你真的需要和getlogin一样的答案,你可以暂时让你的fd 0指向你的控制终端,然后调用getlogin,然后恢复你的fd 0:

int saved_fd0;
if(0>(saved_fd0 = dup(0))
       /*handle error*/;
close(0);

/*open always gets the lowest possible fd number == Now 0*/
/*"/dev/tty" is always your current processes's controlling terminal*/
if(0>open("/dev/tty",O_RDONLY))
    /*handle error*/;
/*
getlogin()
..
*/
/*restore saved_fd0*/
if(0>dup2(saved_fd0,0))
       /*handle error*/;

c# – 如何在没有*具有MethodInfo的情况下使用MSIL *在实例上调用方法?

c# – 如何在没有*具有MethodInfo的情况下使用MSIL *在实例上调用方法?

我有一个遵循特定约定的类的数字属性.例如.

Person1 { get; set; }
Person2 { get; set; }
Person3 { get; set; }

我不想在类的实例上获取MethodInfo对象,而是执行类似这样的操作:

...
il.Emit(OpCodes.Callvirt,[instance]["set_Person" + index]);

上面的代码行是说明性的,而不是我认为它应该是什么.

有谁知道我怎么能这样做?

解决方法

它无法完成,我不明白这一点或任何潜在的好处. MSIL Callvirt指令不接受描述要调用的内容的字符串,它采用指向特定类型的特定方法的元数据标记,并且通过反射获取该值的唯一方法是使用MethodInfo实例.

这似乎不是一个复杂的选择:

il.Emit(OpCodes.Callvirt,type.getmethod("set_Person" + index));

CSS 介绍、什么是 CSS、为什么我们使用 CSS 以及 CSS 如何描述 HTML 元素

CSS 介绍、什么是 CSS、为什么我们使用 CSS 以及 CSS 如何描述 HTML 元素

CSS是什么?

CSS 代表层叠样式表
CSS 描述了 HTML 元素如何在屏幕、纸张或其他媒体上显示
CSS 节省了大量工作。它可以同时控制多个网页的布局
外部样式表存储在 CSS 文件中
为什么我们使用CSS?
CSS 用于定义网页的样式,包括设计、布局以及针对不同设备和屏幕尺寸的显示变化。

示例

身体{
  背景颜色:浅蓝色;
}

h1 {
  白颜色;
  文本对齐:居中;
}

p {
  字体系列:verdana;
  字体大小:20px;
}
登录后复制

CSS解决了一个大问题

HTML 从来没有打算包含用于格式化网页的标签!
HTML 的创建是为了描述网页的内容,例如:

这是一个标题


这是一个段落。

CSS 节省了大量工作!

样式定义通常保存在外部.css文件中。

CSS 语法

CSS 规则由选择器和声明块组成。
h1 {颜色:蓝色;字体大小:12px;}
选择器指向您想要设置样式的 HTML 元素。
声明块包含一个或多个以分号分隔的声明。
每个声明都包含一个 CSS 属性名称和一个值,以冒号分隔。

示例

p {
  红色;
  文本对齐:居中;
}
登录后复制

示例解释

p 是 CSS 中的选择器(它指向您想要设置样式的 HTML 元素:

)。
颜色是一个属性,红色是属性值
text-align 是一个属性,center 是属性值

CSS 选择器

CSS 选择器用于“查找”(或选择)您想要设置样式的 HTML 元素。
我们可以将 CSS 选择器分为五类:
简单选择器(根据名称、id、类选择元素)
组合选择器(根据元素之间的特定关系选择元素)
伪类选择器(根据某种状态选择元素)
伪元素选择器(选择元素的一部分并为其设置样式)
属性选择器(根据属性或属性值选择元素)

CSS 元素选择器

元素选择器根据元素名称选择 HTML 元素。

示例

p {
  文本对齐:居中;
  红色;
}
登录后复制

以上就是CSS 介绍、什么是 CSS、为什么我们使用 CSS 以及 CSS 如何描述 HTML 元素的详细内容,更多请关注php中文网其它相关文章!

今天关于如何在没有 CSS 的情况下更改列标题的字体没有css样式的介绍到此结束,谢谢您的阅读,有关angular – 如何在没有* ngIf的情况下渲染ng-container或ng-template?、C / Linux:如何在没有`getlogin`的情况下获取用户登录名、c# – 如何在没有*具有MethodInfo的情况下使用MSIL *在实例上调用方法?、CSS 介绍、什么是 CSS、为什么我们使用 CSS 以及 CSS 如何描述 HTML 元素等更多相关知识的信息可以在本站进行查询。

本文标签: