Jump to content

artem_niko

uniGUI Subscriber
  • Posts

    635
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by artem_niko

  1. I must put this code in CustomCSS in UniServerModule and set UniPageControl. LayoutConfig.BoCls?
  2. Hello! I want set color of background of header in UniPageControl. In first attach - how is now: https://pastenow.ru/63CP0 In second attach - how I want: https://pastenow.ru/63CP4 Please, help me write code and set color in background! I want set white color (as in secind attach).
  3. Hello! I want load BPL, as plugin, where I create, in this BPL, one Frame1 with component of TUniLabel1. I need load this BPL, that then press on TUniButton on my MainForm and then set TUniLabel1.Caption:=<value from MainForm>. This is my code in MainForm, he succsess work and load BPL: procedure TMainForm.LoadModuleFromBPL; var UniFormLoadedModule: TUniFrame; AClass: TPersistentClass; LoadedBPL: HModule; begin LoadedBPL := LoadPackage(ExtractFilePath(ParamStr(0)) + 'Test.bpl'); if LoadedBPL <> 0 then begin AClass := GetClass('TUniFrame1'); UniFormLoadedModule:=TComponentClass(AClass).Create(UniTabSheet1) as TUniFrame; UniFormLoadedModule.Parent:=UniTabSheet1; UniPageControl1.ActivePage := Ts; end; end; This is code in my Frame1, in my BPL: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, uniGUITypes, uniGUIAbstractClasses, uniGUIClasses, uniGUIFrame, uniGUIBaseClasses, uniLabel; type TUniFrame1 = class(TUniFrame) UniLabel1: TUniLabel; procedure UniFrameReady(Sender: TObject); private { Private declarations } public { Public declarations } end; implementation uses MainModule, ServerModule, Main, UnitPDFViewer; {$R *.dfm} procedure TUniFrame1.UniFrameReady(Sender: TObject); begin UniLabel1.Caption:=UniMainModule.LoggedUser; end; initialization RegisterClass(TUniFrame); end. He does not work because when I compile my BPL, I give this error: "[dcc32 Error] E2223 $DENYPACKAGEUNIT 'UniGUIVars' cannot be put into a package" What I must do?
  4. Коллеги, прошу помочь!)
  5. Ну, вот так вот я попробовал присвоить уже после открытия размеры: procedure TUFormDM.UniFormShow(Sender: TObject); begin UFormDM.Height:=Parent.ClientHeight; UFormDM.Width:=Parent.ClientWidth; end; А вот так вызываю форму свою: procedure TMainForm.UButton_StartClick(Sender: TObject); begin UFormDM.Parent:=MainForm; UFormDM.ShowModalN(); end; И это не работает...
  6. Имеете ввиду AlignmentControl=uniAlignmentClient? У формы нет такого свойства, о котором Вы говорите.
  7. Добрый день! Как можно заставить открываться форму, которая бы брала для себя размеры (выоста и ширина) своего Parent? Поясню. Есть MainForm, на которой есть кнопка, при нажатии на которую открывается обычная (не LoginForm) форма. Мне нужно, чтобы эта вот открывающаяся форма получила такие свойства: Height (открывающейся формы)=ClientHeight (от MainForm) Widht (открывающейся формы)=ClientWidth (от MainForm). В общем, чтобы размер открывающейся формы зависел от клиентских размеров своего Parent. У меня на MainForm в самом верху закреплена UniContainerPanel, т.е. ClientHeight у MaiForm уменьшен на высоту этой UniContainerPanel. Таким образом получается, что открывающаяся через кнопку форму должна быть ниже UniContainerPanel, но по ширине в пределах своего Parent (т.е. в пределах MainForm).
  8. Ок. Вот тестовый пример с двумя кнопками и стилями. https://dropmefiles.com/wCJxL
  9. Я не могу сделать тестовый проект, т.к. я применяю этот код в очень большом коммерческом проекте и взять оттуда часть, чтобы показать я не могу. И все таки. Нельзя раскрасить кодом CSS более одной кнопки - это ограничение триальной версии такое или я просто делаю что-то не так? В моем примере кода есть ли ошибка какая?
  10. У меня нет пока что возможности купить за 50 000 рублей. Это такого ограничение триальной версии или что? Если да, то почему тогда на другой форме не работает для хотя бы одной кнопки, хотя бы тот самый код с синей кнопкой?
  11. Неа, у меня так и написано: function added(sender, container, pos, eOpts) { sender.addCls('boton_green'); } Причем, если я убираю код для синей кнопки из CutsomCSS ServerModule, то у меня кнопка, для которой прописан код выше, становится зеленой. И наоборот. Причем на другой форме код для синей кнопки не срабатывает, только на одной форме работает. Почему отрабатывает только часть CSS кода?
  12. О, благодарю тебя, коллега!!! То, что нужно. Только не понял одного: когда я добавил помимо синей кнопки еще, например, код для зеленой, то у меня код для зеленой не работает и кнопка не становится зеленой. Синей становится, а зеленой нет. Хотя всего лишь поменял код цвета: /* Синяя кнопка */ .boton_blue { border-radius: 6px; background:#3D6594 !important; color:#3D6594 !important; border-color:#3D6594; -webkit-transition: background 0.5s ease-in-out; transition: background 0.5s ease-in-out; -webkit-border-radius: 6px; border-radius: 6px; } /* Зеленая кнопка */ .boton_green { border-radius: 6px; background:#28782d !important; color:#28782d !important; border-color:#28782d; -webkit-transition: background 0.5s ease-in-out; transition: background 0.5s ease-in-out; -webkit-border-radius: 6px; border-radius: 6px; } Из-за чего такое происходит?
  13. Прошу обратить внимание на мой вопрос) Я добавлю скрины, чтобы понятнее было, что мне нужно. Первый скрин - это как сейчас с темой classic: https://pastenow.ru/5VEBW Второй скрин - это как мне надо сделать. https://pastenow.ru/5VEC4 Как мне сделать на втором скрине? Вот код, который делает то, что нужно с кнопкой, но только при наведении мышки на нее, а мне надо, чтобы не при наведении, а всегда было такое состояние у кнопки: /*цвет фона выбранной кнопки в при наведении*/ .customOverCls { border-bottom: orange solid 2px; background: white; border-width: 1px; } Применяю код так: UniButton1.JSInterface.JSConfig('overCls',['customOverCls']);
  14. Благодарю за ответ. Ну, вот в теме classic мне тоже не нравится выпуклость кнопок. Другие темы мне не нравятся, т.к. у меня триальная версия компонент. А скажите, можно ли сделать кнопки в теме gray вот такими, например? https://pastenow.ru/5V0EP
  15. Добрый день! Использую Trial версию UniGUI и тему gray. Возможно ли изменить и убрать "выпуклость" UniButton? Мне не нравятся, что они такие выпуклые и закругленные. И еще вопрос: как изменить цвет самой кнопки? Не при наведении, а именно color кнопки.
  16. Так я и использую MainModule, потому что взял демку UniLoginForm Coockies и переделал на ее основе авторизацию для проекта. Я оставил, как было в демке, переменные с логином и паролем в MainModule: type TUniMainModule = class(TUniGUIMainModule) FDConnection: TFDConnection; FDPhysFBDriverLink: TFDPhysFBDriverLink; FDTransaction: TFDTransaction; FDStoredProc1: TFDStoredProc; procedure UniGUIMainModuleBeforeLogin(Sender: TObject; var Handled: Boolean); procedure UniGUIMainModuleCreate(Sender: TObject); private public {Глобальные переменные для каждого пользователя после авторизации в рамках текущего сеанса} LoggedUser,LoggedPassword: WideString; end; В событии MainForm.UniFormShow я, для примера, взял и поместил на форму UniLabel, чтобы видеть, что при авторизации через разные браузеры у меня действительно отличаются логин и пароль для разных пользователей. И это работает. Теперь же мне надо передавать через FDStoredProc, в качестве значения, некий параметр InParam типа WideString. Процедура отрабатывает, но! Независимо от того, под каким пользователем я авторизовался у меня одинаковый результаты процедуры, а такого не должно быть, т.к. в первом случае у меня этот самый параметр InParam (под первым пользователем) отсутствует, соответственно, для первого пользователя FDStoredProc не должен возвращать для него данные, если передается пустой параметр InParam . А для второго пользователя должен вернуться набор данных, т.к. для него передается непустой параметр InParam . Исходя из этого я делаю предположение, что эта самая переменная InParam , которая объявлена у меня так: type TUniMainModule = class(TUniGUIMainModule) FDConnection: TFDConnection; FDPhysFBDriverLink: TFDPhysFBDriverLink; FDTransaction: TFDTransaction; FDStoredProc1: TFDStoredProc; procedure UniGUIMainModuleBeforeLogin(Sender: TObject; var Handled: Boolean); procedure UniGUIMainModuleCreate(Sender: TObject); private public {Глобальные переменные для каждого пользователя после авторизации в рамках текущего сеанса} LoggedUser,LoggedPassword: WideString; ResultCheck: PChar; end; function UniMainModule: TUniMainModule; var InParam: WideString; implementation .... то она на уровне сервера сохраняет свое значение. Такого быть не должно. Может быть я неправильно разместил и объявил эту переменную? Если да, то куда ее нужно положить, чтобы она, ее значение, было доступно только авторизовавшемуся пользователю, для которого создается свой экземпляр MainModule. Также, вопрос в том, в каком месте расположить код подключения к базе данных? В переменные LoggedUser и LoggedPassword соответствующие данные передаются в событии кнопки, которая располагается на UniLoginForm, т.е. сначала: код подключения к базе данных с полученными LoggedUser и LoggedPassword, а потом уже ModalResult:=mrOK формы UniLoginForm. Но, правильно так делать?
  17. Добрый день! Возможно ли руссифицировать кнопки на строке редактирования, которая появляется при двойном нажатии на гриде? Чтобы было не "Confirm" и "Cancel", а "Сохранить" и "Отменить" соответственно. На данный момент я используя триальную версию компонент. А если бы использовал не триальную, то можно ли было бы там сделать заголовки кнопок по-русски? Если нет, то возможно ли скрыть эти кнопки тогда, а изменения применять при помощи DBNavigator? http://pastenow.ru/5RR41
  18. Да, все круто получилось и все установилось без проблем! Все компоненты появились. Просто забыл сразу установить вручную компоненты. Если хотите, то тему можете удалить, либо оставить, т.к. наверняка народ попрет на новую редакцию Delphi 10.3 Community Edition в скором времени и чтобы у них не было проблем с установкой, то они смогут прочитать об этом в этой теме
  19. Добрый день! Многие слышали, что недавно вышла новая редакция Delphi - Delphi 10.3 Community Edition, которая является бесплатной, если ваш доход от продаж ПО менее $5000 в год и с пролонгацией бесплатной лицензии на 1 год. Я установил данную редакцию и хочу переписывать проект на эту редакцию Delphi. Но, я также хотел поставить UniGUI, установил через инсталлятор. А когда запустить эту новую редакцию, то не вижу среди компонент и на палитре компонентов UniGUI. 1. UniGUI не поддерживает данную редакцию Delphi? 2. Или поддерживает, но надо как-то устанавливать компоненты не так как в предыдущих редакциях? P.S.: Блин, сам уже понял, затупил на ровном месте Все нормально устанавливается. Просто, под, конкретно эту редакцию нужно ставить версию вот эту: C:\Program Files\FMSoft\Framework\uniGUI\uniGUI_D10_3_Rio_PlusGroup, т.к. вы работаете именно с Delphi 10.3 Community Edition
  20. Да я читал про это. Я задал конкретный вопрос: правильно ли я понял, исходя из ссылок выше, что чтобы мне решить мою проблему с сессиями, то надо использовать авторизацию как в демке про LoginForm?
  21. uniGUI Complete Trial Edition 1.90.0.1500 (uniGUI Equinox) Читал, что надо делать авторизацию вроде бы через LoginForm, как в одной из демок, чтобы правильно проходила авторизация. Это так?
  22. Добрый день! Я бы хотел, чтобы мне пояснили на счет сессии пользователя при подключении. Дело в том, что у меня в проекте идет авторизация через пароль на форме UniLoginForm, на которой также выполняется подключение к серверу базы данных Firebird (используя логин и пароль, которые созданы для пользователя на сервере). Там же, в этой форме у меня пароль, только что авторизовавшегося пользователя, заносится в переменную типа PWideChar, т.к. пароль нужен потом для дальнейшей работы пользователя при работе с процедурами через DLL. Но, в какой-то момент у меня проходит ошибка, суть которой, согласно отладчику, заключается в том, что "неправильный логин или пароль". В связи с этим у меня вопросы: 1. Правильно ли я понял, что MainModule для каждого сеанса является уникальным для подключившегося пользователя? 2. Где мне расположить переменную, хранящую в себе пароль, чтобы он был доступен только тому пользователю, который авторизовался и только что подключился? Чтобы другие, кто авторизуется, они работали со своим паролем.
  23. Good day! I would like to be explained to me about the user session when connecting. The fact is that I have authorization in the project through a password on the UniLoginForm form, which also connects to the Firebird database server (using the login and password created for the user on the server). In the same place, in this form, I have the password of the user who has just logged in, is entered into a variable of the PWideChar type, since the password is needed later for the user to work further when working with procedures through a DLL. But, at some point I have an error, the essence of which, according to the debugger, is that "the wrong username or password." In this regard, I have questions: 1. Did I understand correctly that the MainModule for each session is unique for the logged in user? 2. Where can I place a variable that stores a password so that it is accessible only to the user who has logged in and has just connected? To others who are logged in, they work with their password.
  24. Hello, GerhardV! You writed that user can buy 1 of theme or Theme-puck this I want buy 1 theme on select. How I can do it? Can I select liked of me theme? Thanks. P.S.: My email: Artem.Glavatskiy@outlook.com
×
×
  • Create New...