0

Scrollbar in Listbox moves to last selected item

asked 在线波多野结衣AV影片黄色电影片性生活影片任正非:5G独立组网全球只有华为做好了

發布時間︰

  從花好月圓公司下載的那份策劃書里講,婚禮在海岸大酒店十一層的宴會廳舉行,為招待貴賓,整個樓層都被包下來。新娘化妝間在1119號房,位置緊靠著安全通道,選這個房間大概是圖吉利,卻為我們作案留下了方便。不出意外,紅包收齊後會放到新娘化妝間保存,我們打算在婚宴開始後不久行動,那時賓客全部入場,化妝間多半沒人。就算有一兩個人也容易解決,綁起來堵上嘴鎖衛生間就行了。然後我們帶著現金從安全通道逃走——不能走電梯,因為幾百萬現金體積不小,很招眼,如果半路遇見人,事後警察一調查,立馬會懷疑。   “這哪能行,海哥——”在线波多野结衣AV影片   從花好月圓公司下載的那份策劃書里講,婚禮在海岸大酒店十一層的宴會廳舉行,為招待貴賓,整個樓層都被包下來。新娘化妝間在1119號房,位置緊靠著安全通道,選這個房間大概是圖吉利,卻為我們作案留下了方便。不出意外,紅包收齊後會放到新娘化妝間保存,我們打算在婚宴開始後不久行動,那時賓客全部入場,化妝間多半沒人。就算有一兩個人也容易解決,綁起來堵上嘴鎖衛生間就行了。然後我們帶著現金從安全通道逃走——不能走電梯,因為幾百萬現金體積不小,很招眼,如果半路遇見人,事後警察一調查,立馬會懷疑。黄色电影片 ——正好是我平時到她們家里來的時間,也正好是我的電報和康多爾幾乎同 時到達的一刻鐘之前,艾迪特請求她那忠心耿耿的表姐去給她取一本書。不 幸的是,伊羅娜接受了這個表面看來毫無雜念的請求。這個焦灼不安的姑娘, 控制不住自己的內心,就利用這短短的一分鐘時間,實踐了她的決心——就 像她在這個露台上向我預言的那樣,就像我在噩夢中看見的那樣,她干了那 件可怕的事情。 我交了電報。這女電報員真磨蹭,東問西問︰發報人?地址?一道手續性生活影片 約茨西怪模怪樣地瞟著我。“ ,你們有什麼說的?”他隔著桌子跟其 余的人點點頭,“他是不是可以坐?你們見過這樣講究禮節的嗎?是的,是 的,霍夫米勒今天已經講究過一次禮節了!” 2019-07-29 16:02:29 +0800

anvibb gravatar image anvibb
3 1

Hi, guys! I have some trouble with scrollbar in the Listbox component - when I set the model to it and selecting several listitems, the scrollbar moves down to the last selected item, but I need to keep it on top. We've used simple zul as a view:

<zk>
<window xmlns="http: //www.zkoss.org/2005/zul" xmlns:xsi="http: //www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http: //www.zkoss.org/2005/zul http: //www.zkoss.org/2005/zul/zul.xsd"
        use="com.otr.sufd.zkossforms.table.SetDocColumnsView"
        closable="true" border="normal" title="Customize columns" ctrlKeys="" height="400px" width="300px">
    <borderlayout width="100%" height="100%">
        <center>
            <listbox id="table" checkmark="true" vflex="true" fixedLayout="true" multiple="true" width="100%">
                <listhead>
                    <listheader align="left">Column title</listheader>
                </listhead>
            </listbox>
        </center>

        <south size="36" autoscroll="true">
            <toolbar align="end">
                <button label="OK" id="okButton" height="24px" width="75px" mold="os"/>
                <button label="Reset" id="resetButton" height="24px" width="75px"/>
                <button label="Cancel" id="cancelButton" height="24px" width="75px" mold="os"/>
            </toolbar>
        </south>
    </borderlayout>
</window>

</zk>

In SetDocColumnsView I filled Listbox by model and make some AfterCompose actions:

public void configureView(List<? extends HeaderElement> columns, Set<String> hiddenIds) {
    setSizable(true);

    final ListModelList tableModel = new ListModelList(columns);
    tableModel.setMultiple(true);
    table.setModel(tableModel);
    table.renderAll();
    for (int i = 0; i < columns.size(); i++) {
        final HeaderElement column = columns.get(i);
        if (column != null) {
            final Listitem listitem = table.getItemAtIndex(i);
            listitem.setLabel(column.getLabel());
            final String columnId = column.getId();
            listitem.setValue(columnId);
            listitem.setSelected(!hiddenIds.contains(columnId));
        }
    }
}
@Override
public void afterCompose() {
    table = (Listbox) getFellow("table");
    final Button okButton = (Button) getFellow("okButton");
    //adds some listeners to buttons
    addForward(Events.ON_OK, okButton, Events.ON_CLICK);
    addForward(Events.ON_CANCEL, cancelButton, Events.ON_CLICK);
    okButton.setFocus(true);
}

And then I show the dialog window by this code:

final SetDocColumnsView dialog = UIUtils.loadComponent(SetDocColumnsView.getUrl());
dialog.configureView(columnList, hiddenIds);
dialog.setPage(getPage());
dialog.doHighlighted();

I've tried to use some advice given in other threads, such as:

Clients.scrollIntoView(table.getItemAtIndex(0))

or call JS function inside my configureView method:

Clients.evalJavaScript("zk.Widget.$('" + dialog.table.getUuid() + "')._scrollToIndex(0);")

or keep all listitems what I need to select in a different Set and post to setSelectedItems method of Listbox, but everything is without success. Also, I've tried to debug a JS function _doScroll in Listbox.js but I don't figure out from where it has been called :(

I will be very appreciated if someone can help me with this problem.

Best regards, Roman

delete flag offensive retag edit

Comments

if your example is simple, please paste it into http://zkfiddle.org/ so that anyone can have a look directly, this increases your chances of getting a response quickly

cor3000 ( 2019-07-29 18:30:05 +0800 )edit

Yeah, I made simple zkfiddle example - http://zkfiddle.org/sample/1a44bo/1-scrollbar-in-listbox-moves-to-last-selected-item which reproduces the problem

anvibb ( 2019-07-30 21:16:58 +0800 )edit

4 Answers

0

answered 2019-08-01 09:12:39 +0800

hawk gravatar image hawk
2415 1 5
http://hawkphoenix.blogsp... ZK Team

Thanks for the zkfiddle example. Remove renderAll() can solve scrolling position issue. Listbox by default will render necessary Listitem for visible range, you don't need to call renderAll() which will enforce rendering all Listitems which is unnecessary for most cases. Please refer to http://zkfiddle.org/sample/1a44bo/2-scrollbar-in-listbox-moves-to-last-selected-item#source-2

link publish delete flag offensive edit
0
link publish delete flag offensive edit
0

answered 2019-07-31 21:05:33 +0800

anvibb gravatar image anvibb
3 1

updated 2019-08-01 09:01:48 +0800

hawk gravatar image hawk
2415 1 5
http://hawkphoenix.blogsp... ZK Team

Thank you for the response, hawk!

I tried to change the selection of items as you advised, but it doesn't solve my problem - when I select several items via ListModeList.setSelection, the scrollbar moves down to the last item. I made an example of that behavior in zkfiddle - http://zkfiddle.org/sample/1a44bo/1-scrollbar-in-listbox-moves-to-last-selected-item

link publish delete flag offensive edit
0

answered 2019-08-01 17:45:43 +0800

anvibb gravatar image anvibb
3 1

Removing renderAll() is helped!

Thank you so much!

link publish delete flag offensive edit
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!

[hide preview]

Question tools

Follow
1 follower

RSS

Stats

Asked: 2019-07-29 16:02:29 +0800

Seen: 12 times

Last updated: Aug 01

Support Options
  • Email Support
  • Training
  • Consulting
  • Outsourcing
Learn More