Страницы: 1
Здравствуйте!
Если в приложении XUL слева и справа создать две кнопки(button) и разделить их splitter, то если кнопки flex="1" то всё красиво. Кнопки растягиваются справа и слева по мере того как двигаешь сплиттер. А вот если например, справа создать кнопку flex="0" и двигать сплиттер чтобы её закрыть, то кнопка нифига не закрывается, а просто рисуется поверх всего. Как этот косяк устранить? Может нужно создать свой обработчик событий от сплиттера? Помогите бедолаге!
Отредактировано MicroHard (04-04-2009 14:25:35)
Отсутствует
MicroHard
Почему-то не удаётся воспроизвести:
<?xml version="1.0"?> <?xml-stylesheet href="chrome://global/skin/" type="text/css"?> <window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <hbox> <button flex="1"/> <splitter collapse="after"/> <button flex="0"/> </hbox> </window>
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Вот здесь видно лучше. Кнопки рисуются поверх сплиттера и не убираются
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="chrome://global/skin/" type"text/css" ?>
<page id="sbVcrSidebar" title="Page"
orient="horizontal" width="1024" height="768"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
xmlns:html="http://www.w3.org/1999/xhtml">
<vbox id="main_page" flex="1">
<hbox flex="1">
<vbox id="left_panel" style="width:120px; min-width:100px; min-height: 100px;">
<box flex="1" id="side bar">
<box flex="1">
<vbox id="overlay_users" flex="1">
</vbox>
</box>
</box>
<vbox>
<toolbox flex="0">
<toolbar id="tbar_userstatus" flex="0">
<toolbarbutton flex="0" id="btn_yes" label="AAA" autoCheck="false" />
<toolbarbutton flex="0" id="btn_no" label="BBB" autoCheck="false" />
<toolbarbutton flex="0" id="btn_hand_up" label="CCC" autoCheck="false" />
<toolbarbutton flex="0" id="btn_smiles" label="DDD" />
<toolbarbutton flex="0" id="btn_away" label="EEE" />
</toolbar>
</toolbox>
</vbox>
</vbox>
<splitter id="left_splitter" insertbefore="tbar_userstatus" collapse="before" resizebefore="farthest" resizeafter="farthest" style="background-color: #b2b2b2;">
<spring flex="1"/>
<grippy/>
<spring flex="1"/>
</splitter>
<vbox flex="1" id="work vbox" hidden="false">
</vbox>
</hbox>
</vbox>
</page>
Добавлено 04-04-2009 16:33:26
Пардон, у меня там toolbarbutton вместо button - но это дело не меняет:
<?xml version="1.0" encoding="utf-8" ?> <?xml-stylesheet href="chrome://global/skin/" type"text/css" ?> <page id="sbVcrSidebar" title="Page" orient="horizontal" width="1024" height="768" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <vbox id="main_page" flex="1"> <hbox flex="1"> <vbox id="left_panel" style="width:120px; min-width:100px; min-height: 100px;" flex="0"> <button flex="0" id="btn_yes" label="AAA"/> <button flex="0" id="btn_no" label="BBB"/> <button flex="0" id="btn_hand_up" label="CCC"/> <button flex="0" id="btn_smiles" label="DDD" /> </vbox> <splitter id="left_splitter" insertbefore="tbar_userstatus" collapse="before" resizebefore="farthest" resizeafter="farthest" style="background-color: #b2b2b2;"> <spring flex="1"/> <grippy/> <spring flex="1"/> </splitter> <vbox flex="1" id="work vbox" hidden="false"> </vbox> </hbox> </vbox> </page>
- тоже самое. Таже самая проблема.
Но, самое интересное. Даже если попытаться насильно поставить аттрибут flex = 0, в некоторых случаях сплиттер его делает flex = "1":
<?xml version="1.0" encoding="utf-8" ?> <?xml-stylesheet href="chrome://global/skin/" type"text/css" ?> <page id="sbVcrSidebar" title="Page" orient="horizontal" width="1024" height="768" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:html="http://www.w3.org/1999/xhtml"> <vbox id="main_page" flex="1"> <hbox flex="1"> <vbox id="left_panel" style="width:120px; min-width:100px; min-height: 100px;" flex="0"> <vbox flex="0"> <button flex="0" id="btn_yes" label="AAA"/> <button flex="0" id="btn_no" label="BBB"/> <button flex="0" id="btn_hand_up" label="CCC"/> <button flex="0" id="btn_smiles" label="DDD" /> <button flex="0" id="btn_away" label="EEE" /> </vbox> </vbox> <splitter id="left_splitter" insertbefore="tbar_userstatus" collapse="before" resizebefore="farthest" resizeafter="farthest" style="background-color: #b2b2b2;"> <spring flex="1"/> <grippy/> <spring flex="1"/> </splitter> <vbox flex="1" id="work vbox" hidden="false"> </vbox> </hbox> </vbox> </page>
Отсутствует
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Страницы: 1