0

Scrollbar in Listbox moves to last selected item

asked 青娱乐盛宴国产AV无码免费播放一本道手机无码在线看加州副州长表示经贸摩擦和加征关税严重损害当地经济

發布時間︰

責任是不能打退堂鼓的,少尉先生!我有義務事先向您發出充分的警告,我 們當大夫的,在每次做手術之前都有義務提請有關人員注意一切可能發生的 危險——向一個已經癱瘓了這麼長時間的姑娘許下諾言,說她在最短的時間 內就會完全治愈,這也是一個手術,這跟用手術刀進行的手術同樣責任重大。 所以請您考慮再三,您在承擔什麼樣的責任——一個人受過一次欺騙,再讓 他振作起來,這是需要難以估量的力量才能辦到的!我不喜歡說話含糊其詞。 我原來的目的是,立刻老老實實地向開克斯法爾伐父女講清楚,那種方法對 我們這種病例是無法使用的,遺憾的是,我們還得要求他們父女表現出很大 的耐心。在我放棄這個目的之前,我必須知道,我是否可以對您完全放心。 我能無條件地指望您,到時候不撂下我不管嗎?” 青娱乐盛宴国产 “這是受害者辭別屠夫的場面。可是卡尼茲卻覺得,他這一斧子砍下去 是打在他自己頭上。他迷迷糊糊地站了幾分鐘,眼楮直勾勾地瞪著空曠無人 的飯店大廳。最後,街上熙來攘往的人流把他裹走,他不知道身往何處。從 來沒有一個人這樣看過他,目光里充滿了人情,充滿了感激。從來沒有一個 人這樣跟他說過話。他的耳邊不由得又響起了‘我非常感謝您’這句話的聲 音;可是他恰好把這個人搶了,正好把這個人欺騙了!他一再停下腳步,拭 去額上沁出的汗水。他像夢游似的沿克爾特納大街踉踉蹌蹌地走著,步履蹣 跚,漫無目的;突然在街上的那家規模很大的玻璃商店前,在櫥窗的鏡子里 迎面看到了他自己的臉,他目不轉楮地凝視自己,就像人家仔細端詳登在報 上的一個罪犯的照片,想看出來,在這個人的面部輪廓里那種罪犯的特征究 竟在哪里,是在那翹起來的下巴上,凶惡的嘴唇上,還是在冷酷的眼楮里。AV无码免费播放 ? 洛可可,歐洲的一種藝術風格,流行于一七二○至一七七○年間,以法國為最盛,其特征為縴巧優美, “是的,”我不假思索地回答道,可是立刻就對這脫口而出的一句話嚇一本道手机无码在线看 “咱們現在走吧,”我很快地向封?開克斯法爾伐先生低聲說了一句, 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