我有一个问题需要帮助。我正在制作一个能够使用 DES 或 RSA 加密和解密的 C 程序。对于制作 GUI 主要是因为缺乏更好的选择,我选择了 GTK,但我需要一些关于如何在按下按钮时存储条目中的文本的指导。
因此,如果用户在给定的输入字段中键入某些内容并按"加密",我需要以某种方式存储他所写的内容,因为我需要进行实际加密,但找不到合适的命令。我唯一能做的就是将其写入控制台,这并没有真正的帮助,而且我需要将实际的加密消息返回到另一个条目。
使用编辑小部件(如gtkTextView和此GtkEntry)的最佳方式,使用它们的缓冲区从用户输入中获取数据并从后端发送数据。对于 GtkEntry ,您应该使用 GtkEntryBuffer ,在那里您可以找到处理文本的函数。无论您在此缓冲区中插入什么内容,都将出现在 GtkEntry 的 GUI 上。使用以下函数获取数据和发送,获取数据 -->"gtk_entry_buffer_get_text ()"发送数据 -->"gtk_entry_buffer_set_text ()"
您可以添加标记为发送和添加回调函数的按钮,您可以在其中获取数据或将数据发送到 GtkEntry 或从 GtkEntry 发送数据。
同样对于加密,您可以使用GtkEntry中的输入提示,您可以在其中选择密码模式,这有助于您隐藏在GtkEntry中编写或显示的任何内容。
很简单,我知道您知道如何在回调中捕获按钮的点击信号:
1.- 用gtk_label_get_text获取用户输入。由于该函数返回一个 const 字符串,因此您需要使用 g_strdup 等函数复制它,或者将其保存在另一个缓冲区中以处理加密。
2.- 加密字符串。
3.- 发回带有gtk_label_set_text的加密字符串