0

Scrollbar in Listbox moves to last selected item

asked 成 人色色亚洲色图欧美色图关晓彤声明:与Coach已无合作 坚持一个中国原则

發布時間︰

我連忙搪塞過去︰“沒有的事。我就來。”三腳兩跳,我們就到了樓梯 口,到了那兒我又猛地一下轉過身去。 龍頭在嘩嘩地流水,一只靴子落在地上,按照條例規定,士兵的營房里已經 熄燈,只有一個房間傳出一陣柔和、陌生的歌聲。我不由自主地側耳細听︰ 幾個小俄羅斯士兵在一起輕聲唱著或者哼著一支憂傷的歌子。每到人睡之 前,當他們脫去那身釘著黃銅鈕扣的十分花哨的陌生衣服,又變成一個赤裸 裸的人,就跟在家里躺在禾草堆里一樣的時候,他們就想起了故鄉,想起了 田野,或者說不定想起了一個他們心愛的姑娘,于是他們就唱起這些憂郁哀 傷的曲調,以便忘卻他們離開的一切。而這一切又是多麼遙遠!我平素沒有 注意過他們的哼唱,因為我听不懂歌詞,可是這一次我覺得這些素不相識的 人像兄弟一樣親切,他們的悲哀深深地打動了我。唉,我真想坐到他們當中 哪一個人的身邊去,和他談談,他也許不會理解,可是說不定他那溫馴善良 的眼楮會向你投來富有同情心的一瞥,他會比對面坐在馬蹄形的筵席上的快 活的人們更加理解這一切。只希望能找到一個人,幫我脫出這糾纏不清的圈 套!成 人色色 事後想想,我也覺得非常奇怪。往往會同時出現這樣神秘莫測的現象︰一方 面,人清醒的思維麻痹了,另一方面,神經又在內部激動起來。當我們走迸 紅獅酒家大廳的時候,由于紀律性的催眠作用,分配給我的工作,我都好歹 辦得像模像樣。要于的活可真不少。一大堆橫幅標語、旗幟和徽章,平時只 有在舉行團隊舞會的時候才五光十色地掛出來,這下全撇來了,幾個勤務兵 高高興興地在牆上乒乒乓乓地敲打,旁邊是施泰因許貝在再三囑咐號兵,什 麼時候該吹喇叭表示慶賀,怎麼個吹法。約茨西因為一手字寫得特別工整, 所以領到的任務是寫菜單,菜單上所有的菜部取了幽默風趣的名稱。他們把 安排席次的任務硬派給我。這當兒僕人已經把桌椅擺好,侍者把幾十瓶葡萄 酒和香檳酒叮叮當當地放到桌上,這是巴林凱用他的汽車從維也納薩赫爾飯 館運來的。奇怪的是這陣忙亂的旋風使我心里舒服,因為它那暄鬧的聲音壓 過了我兩個太陽穴之間滯重的敲打和詢問。亚洲色图 “或者不如這樣說吧︰但願這事會有個良好的結局,因為把這事拖下去,我 總覺得心里不是滋味。我現在要詳細告訴您,我準備走多遠——一步也不越 出真實情況。我勸她到安加丁去治療,不過我要說明,維埃諾的方法根本沒 有充分試驗過。我要著重強調,他們兩個切勿指望發生奇跡。倘若他們盡管 如此,出于對您的信任,依然沉涸于荒謬絕倫的希望之中,那這就要看您了 她這番話就像用板子打人,一下一下,來勢凌厲沉重,我覺得每一下都欧美色图 許有五分鐘時間和我談談吧?” 他微微一愣,然後露齒一笑。 “無上榮幸,親愛的霍夫??霍夫??” “霍夫米勒,”我補充道。 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