0

Scrollbar in Listbox moves to last selected item

asked 大香蕉网超碰欧美caopon免费超碰超碰免费公开在线观看百度视频资本潮退、信任危机爆发 造车新势力“命悬一线”?

發布時間︰

這件事里面去!你沒有足夠的力量來抵抗這拉扯撕奪,你會給撕碎的。最好 干脆把信銷毀或者原信退回,拆也不拆!腦了里根本想也不要想,有一個極 端陌生的人正在愛你;根本就不要知道有這麼回事,也不要因此而良心不安! 讓開克斯法爾伐全家都見鬼去吧!我從前並不認識他們,以後也不想再認識 他們。可是緊接著我倏地一驚,閃過一個念頭︰說不定她已經尋了短見,因 為我沒有回信給她!說不定她已經走了絕路!她是個絕望的人,可不該完全 不給她回答啊!我是不是還是把庫斯馬叫醒,讓他趕快送一句話到城外去, 表示安慰,表明信已收到?千萬別把罪過弄到自己頭上,千萬別這樣!于是 我撕開信封。感謝天主,這不過是一封短簡。一共只有一頁,不過十行,而 且沒有抬頭︰ 你應該理解︰我可是久久地對你懷著無限相思啊。 “然而這麼一來,本來在我真正復活之前下會讓你知道的事情,你卻知大香蕉网超碰欧美 “誰來了?” “巴林凱呀!別裝出那麼一副蠢相!你莫非不認得巴林凱麼?” 巴林凱?巴林凱?我的腦子里還糊里糊涂、亂成一團,我得像從灰塵彌caopon免费超碰 我不知道我在露台上這些破爛杯碟當中究竟站了多久,這陣來勢凶猛的 感情發作把我完全弄得昏頭昏腦,我怎麼也無法解釋這次發作。我到底說了 些什麼傻話了呢?是什麼激起了這陣難以解釋的憤怒呢?這時候身後又傳來 熟悉的鼓風機那樣的聲響。電梯又開上來了。僕人約瑟夫又一次走過來,他 那一直刮得干干淨淨的臉上籠罩著一片奇怪的悲哀陰影。我想,他來,只是 為了收拾打掃,我站在這堆破爛當中礙他的事,覺得很下好意思。可是他垂 著眼楮不聲不響地走到我的身邊,同時從地上揀起一條餐巾。 可是隔一會兒我就嚇得直跳起來。因為這封信已經擱在桌上——這怎麼 可能呢?——就放在燈光照射的光圈之中。我剛才以為這封信還藏在我胸口 的口袋里呢,——是的,信就在那里,一個四四方方的藍信封,十分熟悉的 筆跡。超碰免费公开在线观看百度视频 “啊,原來您指的是這個呀?”她說道,口氣大方到了極點。“這不會 嚴重到哪兒去的。最多幾百個克朗了不起了。這又有什麼要緊。” 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