Jump to content

MSMK

uniGUI Subscriber
  • Posts

    392
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by MSMK

  1. 4 minutes ago, Sherzod said:

    Добрый день,

    В смысле?

    Необходимо сделать водяные знаки на всю форму, надпись с текстлм пользователя, чтоб повторялось по всей форме и была прозрачной. Чтоб в случае скриншота, можно было идентифировать пользователя

  2. 2 minutes ago, Sherzod said:

    UX used to provide a spotlight around a specified component/element.

    image.thumb.png.87a6dd76ff019e1a0b9882189d6ba349.png

     

    1. MainForm.Script ->

    var spotlight = Ext.create('Ext.ux.Spotlight', {
        easing: 'easeOut',
        duration: 500
    });
    
    spotlight.hideAndInactive = function() {
        this.hide();
        this.active = false;
    };

    2. CustomCSS ->

    .x-spotlight {
        background-color: #ccc;
        z-index: 99999;
        position: absolute;
        top: 0;
        left: 0;
        -moz-opacity: 0.5;
        opacity: .50;
        filter: alpha(opacity=50);
        width: 0;
        height: 0;
        zoom: 1;
        font-size: 0;
    }

    3. Initialization ->

    initialization
      UniAddCSSLibrary('build/packages/ux/classic/classic/resources/ux-all.css', False, [upoFolderJS, upoPlatformDesktop]);
      UniAddJSLibrary('build/packages/ux/classic/ux.js', False, [upoFolderJS, upoPlatformDesktop]);

     

    Simple usage ->

    Show:

    procedure TMainForm.UniButton1Click(Sender: TObject);
    begin
      JSInterface.JSCallGlobal('spotlight.show', [UniEdit1.JSId]);
    end;

    Hide:

    procedure TMainForm.UniEdit1Click(Sender: TObject);
    begin
      JSInterface.JSCallGlobal('spotlight.hideAndInactive', []);
    end;

     

    Добрый день! А можно ли сделать водяные знаки(water mark), используя эту конструкцию? 

  3. 2 hours ago, Sherzod said:

    Доброе,

    1. Откройте демо:

    \FMSoft\Framework\uniGUI\Demos\Desktop\Clientside Alignment - Layout VBox

    2. Используйте UniContainerPanel1, свойство AutoScroll = True

    3. 

    procedure TMainForm.UniFormCreate(Sender: TObject);
    begin
      UniPanel1.JSInterface.JSConfig('minHeight', [UniPanel1.Height]);
      UniPanel2.JSInterface.JSConfig('minHeight', [UniPanel2.Height]);
      UniPanel3.JSInterface.JSConfig('minHeight', [UniPanel3.Height]);
    end;

     

    спасибо. отлично

    • Thanks 1
  4. а подскажите еще, как убрать тень у выпадающего меню?

    Прововал так

    .custom-menu {
        box-shadow: none !important;;
    }

    не помогло.

    И еще сделать выпадающее меню белым цветом.

    Пробовал так

    .custom-menu-item .x-menu-body-default {
      background: #fff !important;;
      padding: 2px;
    }

    тоже не помогло

    Screenshot_6.png

    Screenshot_7.png

  5. 17 hours ago, Sherzod said:
    procedure TMainForm.UniFormCreate(Sender: TObject);
    begin
        //with TExtPopup(UniPopupMenu).MenuControl.JSInterface do
        //begin
        //    JSConfig('cls', ['custom-menu-item']);
        //end;
    
        MenuButton := TUniMenuButton.Create(Self);
        MenuButton.Name := 'btnMenuButton';
        MenuButton.Caption := 'Наведи на меня и я покажу тебе меню';
    
        MenuButton.ClientEvents.UniEvents.Values['afterCreate'] := 'function afterCreate(sender)' +
                                                                       '{'+
                                                                       '  textMetrics = new Ext.util.TextMetrics();'+
                                                                       '   valWidth = textMetrics.getWidth(sender.text);'+
                                                                       '   sender.width = valWidth + 30;'+
                                                                       '}';
    
        MenuButton.ClientEvents.ExtEvents.Values['mouseover'] := 'function mouseover(sender, e, eOpts)'+
                                                             '{'+
                                                             '  sender.maybeShowMenu();'+
                                                             '  sender.menu.setWidth(sender.getWidth());'+
                                                             '}';
    
        MenuButton.JSInterface.JSConfig('cls', ['ribbon-menu-btn']);
        
        MenuButton.JSInterface.JSAddListener('menushow', 'function(me){me.getMenu().addCls("custom-menu-item")}'); //<------------
        
        MenuButton.DropdownMenu := UniPopupMenu;
        MenuButton.Parent := pnTools;
        MenuButton.Visible := True;
    end;

     

    спасибо огромное

  6. Еще раз салам.

    Столкнулся с такой проблемой, при создании в рантайме компонента UniPopupMenu, задаю ему стиль CSS

    with TExtPopup(UniPopupMenu).MenuControl.JSInterface do
        begin
            JSConfig('cls', ['custom-menu-item']);
        end;

    при инициализации выходит ошибка:
     

    Screenshot_5.png

     

    тестовый пример приложил

     

    testMenuButton.zip

  7. Доброе время суток, есть проблема с отображением меню. По умолчанию меню выпадает по нажатию на arrow. Мне нужно чтобы меню отображалось по нажатию кнопки, без разницу по какой части.

    MenuButton.ClientEvents.UniEvents.Values['click'] := 'function click(sender, e, eOpts)'+
                                                             '{'+
                                                             '  sender.maybeShowMenu();'+
                                                             '}';

    код не работает

    Тестовый пример приложил

    testMenuButton.zip

×
×
  • Create New...