0

Scrollbar in Listbox moves to last selected item

asked 日妹妹插妹妹a片96不用播放器的成人片在线观看被限制出境还是在旧金山养病?孙宇晨遭遇“罗生门”

發布時間︰

時起我又明白了︰只要良心有知,任何罪過都不會被人忘卻。 突然騷亂的喧鬧聲從門里傳出來。我側耳傾听。在隔壁屋里大概是吵起 架來了,可以清清楚楚地听見激烈的聲音正情緒激動地吵來吵去。我驚恐地 听出,是伊羅娜和艾迪特的聲音在互相爭吵。她們一個像是要干什麼,另一 個像是在勸阻。“我求你,”我清楚地听到伊羅娜的警告,“你就呆著吧。” 艾迪特粗暴地回答了一句“不”,憤怒他說︰“別管我,別管我。”我不再 注意老人喋喋不休的嘮叨,越來越忐忑不安地傾听著。在這扇關上的房門後 面發生什麼事情了?為什麼和平破裂了,我締造的和平,這一天天主安排的 和平?艾迪恃這樣專橫地要干什麼呀?那另一個又想阻止什麼呢?這時—— 陡然間響起了那陣使人不快的聲響︰篤、篤、篤、篤的拐杖聲。我的天啊, 她該不是想不靠約瑟夫的幫助,跟著向我這兒走來吧?可是篤篤的木頭擊地 的聲音已經急匆匆地逼近了,篤??篤,右,左??篤、篤??右。左,右、 左——听見這聲音,我不由自主地聯想到那搖搖晃晃的身體——現在她想必 已經非常挨近門口了。接著轟隆一聲,猛地一震,仿佛有很笨重的一堆東西 摔到門上去了。接著只听見一陣因為使勁過猛而發出的喘息聲,有人猛地使 勁把門把往下一摁,格嗒一響,門應聲洞開。日妹妹 我在寫信的時候才意識到這事做得正確。我第一次感激上校救了我的命。我 知道︰從現在開始,我這一生只對一個人盡責任,只對她,只對這傾心愛我 的姑娘盡責任。插妹妹a片96 甚至于還是出在一個大公爵的身上呢。你當時喝得爛醉如呢,一點都不知道 自己在胡說些什麼,根本也沒有好好听別人說的話,人家提的問題,全都理 解錯了。這不是很合乎邏輯嗎!那個藥劑師我還要坦率地告訴他,我把你狠 狠罵了一頓,因為你醉醺醺地跌跌撞撞地到咖啡館里去了。——就這樣︰第 一步算了結了。” “是的,”我一面說,一面又于了上次干過的傻事——向這雙目失明的 女人鞠了一躬。不用播放器的成人片在线观看 官兵必須在十一點正到齊。您趕快下去吧。” 我飛快地跑下樓梯。果然,我們大家——整個駐地的全體官兵——都已 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