0

Scrollbar in Listbox moves to last selected item

asked 哥哥坏妹妹爱哥哥爱色阁色哥哥在线影院中美服饰电商研究:为何国内淘宝独大 国外却遍地开花

發布時間︰

據來信,似乎你說的relax[放松]不是五六年以前談的純粹技巧上的relax[放松],而主要是精神、感情、情緒、思想上的一種安洋、閑適、淡泊、超逸的意境,即使牽涉到技術,也是表現上述意境的一種相應的手法,音色與temporubato[彈性速度]等等。假如我這樣體會你的意思並不錯,那我就覺得你過去並非完全不能表達relax[閑適]的境界,只是你沒有認識到某些作品某些作家確有那種relax[閑適]的精神。一年多以來,英國批評家有些說你的貝多芬(當然指後期的朔拿大)缺少那種vienneserepose[維也納式閑適],恐怕即是指某種特殊的安閑、恬淡、寧靜之境,貝多芬在早年中年劇烈掙扎與苦斗之後,到晚年達到的一個peacefulmind[精神上清明恬靜之境],也就是一種特殊的serenity[安詳](是一種resignation[隱忍恬淡,心平氣和]產生的serenity[安詳])。但精神上的清明恬靜之境也因人而異,貝多芬的清明恬靜既不同于莫扎特的,也不同于舒伯特的。稍一混淆,在水平較高的批評家、音樂家以及听眾耳中就會感到氣息不對,風格不合,口吻不真。我是用這種看法來說明你為何在彈斯卡拉蒂和莫扎特時能完全relax[放松],而遇到貝多芬與舒伯特就成問題。另外兩點,你自己已分析得很清楚︰一是看到大多的drama[跌宕起伏,戲劇成份],把主觀的情感加諸原作;二是你的個性與氣質使你不容易relax[放松],除非遇到斯卡拉蒂與莫扎特,只有輕靈、松動、活潑、幽默、嫵媚、溫婉而沒法找出一點兒借口可以裝進你自己的drama[激越情感]。因為莫扎特的drama[感情氣質]不是十九世紀的drama[氣質],不是英雄式的斗爭,波濤洶涌的感情激動,如醉若狂的fanaticism[狂熱激情];你身上所有的近代人的drama[激越,激烈]氣息絕對應用不到莫扎特作品中去;反之,那種十八世紀式的flirting[風情]和詼諧、俏皮、譏諷等等,你倒也很能體會;所以能把莫扎特表達得恰如其分。還有一個原因,凡作品整體都是relax[安詳,淡泊]的,在你不難掌握;其中有激烈的波動又有蒼茫惆悵的那種relax[閑逸]的作品,如蕭邦,因為與你氣味相投,故成績也較有把握。但若既有激情又有隱忍恬淡如貝多芬晚年之作,你即不免抓握不準。你目前的發展階段,已經到了理性的控制力相當強,手指神經很馴服的能听從頭腦的指揮,故一朝悟出了關鍵所在的作品精神,領垂到某個作家的relax[閑逸恬靜]該是何種境界何種情調時,即不難在短時期內改變面目,而技巧也跟著適應要求,像你所說“有些東西一下子顯得容易了”。舊習未除,亦非短期所能根絕,你也分析得很徹底︰悟是一回事,養成新習慣來體現你的“悟”是另一回事。 哥哥坏妹妹爱 最後問你一句︰你看過此書沒有?倘未看,可有空即讀,而且隨手拿一支紅筆,要標出(underline)精彩的段落。以後有空還得再念第二三遍。彌拉年輕,未經世事,我覺得她讀了此書並無所得。哥哥爱色阁 “理財”,若作為“生財”解,固是一件難事,作為“不虧空而略有儲蓄”解,卻也容易做到。只要有意志,有決心,不跟自己妥協,有狠心壓制自己的fancy[一時的愛好]!老話說得好︰開源不如節流。我們的欲望無窮,所謂“欲壑難填”,若一手來一手去,有多少用多少,即使日進斗金也不會覺得寬裕的。既然要保持清白,保持人格獨立,又要養家活口,防旦夕禍福,更只有自己緊縮,將“出口”的關口牢牢把住。“人口”操在人家手中,你不能也不願奴顏婢膝的乞求;“出口”卻完全操諸我手,由我作主。你該記得中國古代的所謂清流,有做骨的人,都是自甘澹泊的清貧之士。清貧二字為何連在一起,值得我們深思。我的理解是,清則貧,亦維貧而後能清!我不是要你“貧”,僅僅是約制自己的欲望,做到量人為出,不能說要求大高吧!這些道理你全明白,毋須我咯嘟,問題是在于實踐。你在藝術上想得到,做得到,所以成功;倘在人生大小事務上也能說能行,只要及到你藝術方面的一半,你的生活煩慮也就十分中去了八分。古往今來,藝術家多半不會生活,這不是他們的光榮,而是他們的失敗。失敗的原因並非真的對現實生活太笨拙,而是不去注意,不下決心。因為我所謂“會生活”不是指發財、剝削人或是嗇刻,做守財奴,而是指生活有條理,收支相抵而略有剩余。要做到這兩點,只消把對付藝術的注意力和決心拿出一小部分來應用一下就綽乎有余了!色哥哥在线影院 一九六二年二月二十一日夜 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