0

Scrollbar in Listbox moves to last selected item

asked 成 人色色亚洲色图欧美色图四川凉山甘洛7人因暴雨失联 失联地点确定

發布時間︰

可是我只是很快地把我忘記了撂在桌上的信拿過來,塞進我胸口的衣袋里。 我們的確是在最後一瞬間進入大廳的。在長長的馬蹄形的桌子旁邊圍坐著全 團軍官,可是,上級軍官沒有入座,誰也不敢縱情歡樂,大家都像小學生似 的。上課鈴已經響過,老師隨時都可能走進教室來。 “哈,瞧瞧,”我大笑起來,笑得誠心誠意,“瞧你們這些當老百姓的 把當兵的想象成什麼樣子,上咖啡館,打打彈子,在林蔭大道上溜達溜達, 什麼時候雅興大發,就穿上便服,到世界各處去逛上幾星期。這樣遠足一番, 豈不是簡單已極。只消把兩根指頭往帽沿上一放,說一聲︰‘再見了,上校 先生,我現在實在沒有興趣再當這勞什子的兵了。什麼時候我又覺得對勁了, 那時候再見吧!’你們以為,在我們軍隊這條苦役船上日子過得不知怎麼美 呢!您知道嗎,我們這號人,如果要想請一小時假,就得纏上根繃帶,乖乖 地兩腳立正去打報告,‘畢恭畢敬’地提出請求?不錯,為了請一小時假, 就得費那麼多手續,演那麼多戲。倘若要請一天假,那至少得有個姑媽不幸 去世,或者家里有什麼人出殯。要是我在軍事演習的當口,無比謙卑、極為 恭順地向我的上校提出,我有興致,現在請八天假,到瑞士去游山玩水一番, 我可真想瞧瞧他听了這話後的那副尊容。那您就會听到幾句妙語,這種話您 在任何文雅的字典里都是找不到的。啊,我的親愛的艾迪特小姐,您可是把 事情設想得大輕而易舉了。”成 人色色 亚洲色图 走。“我想,她現在睡了。對不起,我得回去。” 可是我那粗魯無禮的舉止想必含有令人吃驚的東西,因為伊羅娜毅然決 道了。你也知道了,究竟為了誰,我才一心想要恢復健康。在這個世界上我 究竟只為了誰——只為了你啊!僅僅是為了你啊!請原諒我這愛情,我無限 心愛的人兒啊,我尤其要懇求你的就是這一點——不要害怕,千萬不要在我 面前感到害怕!不要以為,我已經把我的感情強加給了你一次,還會繼續攪 得你不得安生;不要以為,雖然我對我現在這樣的弱不禁風,自己都覺得反 感,卻還想來妨礙你。不,我向你發誓——我永遠不會讓你感到我會逼你, 我願意你永遠也感覺不到我。我只想等待,耐心地等待,直到天主垂憐我, 讓我重新恢復健康。所以我求你,懇求你——不要害怕我的愛情,我最親愛 的。你一向同情我,誰也不像你這樣。你好好想想,我是多麼孤立無援,被 牢牢地釘在我的軟椅里,一步也邁不開,即無力量追隨你,也無力量向你迎 面跑去。你好好想想、好好想想,我是一個囚徒,不得不在我的牢房里等待, 總是既耐心又焦躁地等待,直到你來贈送給我一小時的時間,直到你允許我 看著你,听你的聲音,在同一個房間里感覺你的呼吸,感到你的存在,這就 是多年來天主賜給我的惟一的幸福,第一個幸福。你想想,你好好地想一想︰ 我躺在那里,白天黑夜地躺著、等著,每一小時都變得無限的悠長,這種緊 張的狀態簡直叫人難以忍受。這時你來了,我不能像另外的姑娘那樣跳起來, 向你迎面跑去,不能擁抱你,不能留住你。我只好坐在那里,控制住、壓制 住自己的感情,把心事深藏不露,我只好注意自己的每一句話,每一瞥眼光, 嗓音的每一個顫動,只是為了不讓你認為我狂妄自信,自以為有權愛你。然 而,請相信我,親愛的,即使這折磨得我好苦的幸福,對于我總還是一種幸 福。每次我成功地掩飾了我的感情,我總夸獎我自己,鐘愛我自己,你泰然 自若地走掉了,無拘無束,心安理得,對我的愛情一無所知,只是在我的心 里留下了痛苦,我知道,我已經不可救藥地迷戀上你了。欧美色图 “哈,瞧瞧,”我大笑起來,笑得誠心誠意,“瞧你們這些當老百姓的 把當兵的想象成什麼樣子,上咖啡館,打打彈子,在林蔭大道上溜達溜達, 什麼時候雅興大發,就穿上便服,到世界各處去逛上幾星期。這樣遠足一番, 豈不是簡單已極。只消把兩根指頭往帽沿上一放,說一聲︰‘再見了,上校 先生,我現在實在沒有興趣再當這勞什子的兵了。什麼時候我又覺得對勁了, 那時候再見吧!’你們以為,在我們軍隊這條苦役船上日子過得不知怎麼美 呢!您知道嗎,我們這號人,如果要想請一小時假,就得纏上根繃帶,乖乖 地兩腳立正去打報告,‘畢恭畢敬’地提出請求?不錯,為了請一小時假, 就得費那麼多手續,演那麼多戲。倘若要請一天假,那至少得有個姑媽不幸 去世,或者家里有什麼人出殯。要是我在軍事演習的當口,無比謙卑、極為 恭順地向我的上校提出,我有興致,現在請八天假,到瑞士去游山玩水一番, 我可真想瞧瞧他听了這話後的那副尊容。那您就會听到幾句妙語,這種話您 在任何文雅的字典里都是找不到的。啊,我的親愛的艾迪特小姐,您可是把 事情設想得大輕而易舉了。” 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