提问人:leon22 提问时间:5/18/2012 更新时间:5/21/2012 访问量:141
在php中调整GtkMessageDialog的大小
Resize GtkMessageDialog in php
问:
我需要在php中调整GtkMessageDialog的大小,以便有足够的空间容纳长字符串(不需要换行)!
创建它:
$dialog = new GtkMessageDialog($this->window, Gtk::DIALOG_MODAL, Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO, "");
设置消息输出:
$message = "I NEED A LONG STRING TO DISPLAY IN THE DIALOG\n"
$dialog->set_markup($message);
如何调整对话框大小?(字符串应适合一行)
谢谢和问候
莱昂22
答:
0赞
Melsi
5/21/2012
#1
如果我是对的,您不想使用换行符来增加对话窗口的高度。
如何做没有区别,它与所有其他小部件相同,只需使用方法即可。此外,每当您遇到此类问题时,只需告诉 php 以获取可用的方法。set_size_request
因此,对于此示例,您将使用它来获取所有方法:
file_put_contents("out.txt",print_r(get_class_methods($dialog),true));
这是一个完整的示例,可以根据需要设置大小:
<?php
$window = new GtkWindow();
$window->set_size_request(400, 600);
$window->connect_simple('destroy', array('Gtk','main_quit'));
$message = '<b>DO I NEED</b> A LONG STRING TO <b><span foreground="blue"> '.
"DISPLAY IN THE DIALOG?</span></b>\n";
$dialog = new GtkMessageDialog($window, Gtk::DIALOG_MODAL,
Gtk::MESSAGE_QUESTION, Gtk::BUTTONS_YES_NO, null);
$dialog->set_size_request(600,400);
$dialog->set_markup($message);
$answer = $dialog->run();
$dialog->destroy();
if ($answer == Gtk::RESPONSE_YES)
echo "So I need it.";
else if ($answer == Gtk::RESPONSE_NO)
echo "I see, I don't need it.";
else
echo "Choose something.";
$window->show_all();
Gtk::main();
?>
评论