Странное поведение главного окна

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Странное поведение главного окна

Сообщение pupsik » 07.08.2017 11:50:21

Лекс Айрин какая логика и чья? ТС написал одно, возможно имея иное...
что-то сложнее блокнота
в смысле? Это касаемо вопроса ТС? Дык 20 формочек - не показатель, как и 100 +.

И сложным (хотя кто его знает что в вашем понимании сложное) можно сделать и блокнот. Т.е. ваш редактор. Вроде и легко и что там делать. От силы 10-к форм. И, как бы, уровень блокнота. А вот реализовать можно в нём нечто управление самолётом. Так что: блокноты бывают разными.
pupsik
энтузиаст
 
Сообщения: 1017
Зарегистрирован: 20.08.2014 16:20:13

Re: Странное поведение главного окна

Сообщение Лекс Айрин » 07.08.2017 12:06:08

pupsik, а то, что тема в разделе "программирование под Lazarus" у тебя превратилось в "программирование Lazarus-а".

Конечно, одно мало отделимо от другого, но все же... тем более, что ТС указал, что он не хотел бы поднимать фокус ручками... т. е. он как бы имеет доступ к коду. Вообще, конечно, все имеем, но после обновления наши правки исчезают.
И да. Блокноты бывают разные. И, если уж на то пошло, я реализовал далеко не все, что хотелось. Сейчас я пишу дополнительные модули отработки текста, которые будут подключаться (или нет, если не хватит мозгов) позже как дополнения.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 4177
Зарегистрирован: 19.02.2013 16:54:51

Re: Странное поведение главного окна

Сообщение pupsik » 07.08.2017 12:41:18

"программирование под Lazarus"
чаво...о? Мне что: вылезло?
Список форумов ‹ Программирование ‹ Lazarus
Какой "под"???

что он не хотел бы поднимать фокус ручками... т. е. он как бы имеет доступ к коду. Вообще, конечно, все имеем, но после обновления наши правки исчезают.
Ещё большее "ЧАВО..О?"... Т.е. он не имеет доступа к коду лазаря???

И..и, ёшки, я говорил не о том что вы написали или уже реализовали. А имелось ввиду ваша практика... Т.е. то что вы пишите - сложнее блокнота? Ведь, на первый взгляд - это блокнот с десятком форм...
pupsik
энтузиаст
 
Сообщения: 1017
Зарегистрирован: 20.08.2014 16:20:13

Re: Странное поведение главного окна

Сообщение Лекс Айрин » 07.08.2017 13:12:00

pupsik писал(а):Какой "под"???


по правилам, это как раз именно под (т.е. с использованием) Лазаруса.

pupsik писал(а):Т.е. он не имеет доступа к коду лазаря???



Хорошо, сейчас ты имеешь возможность сохранить свой код в транке Лазаруса? Лично я нет.

pupsik писал(а): Ведь, на первый взгляд - это блокнот с десятком форм...


А это и есть блокнот с десятком дополнительных форм. Просто при наборе текста иного и не надо. Да и издательства очень сильно ругаются, если в тексте есть сложная верстка. Ее все равно потом придется удалять.
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 4177
Зарегистрирован: 19.02.2013 16:54:51

Re: Странное поведение главного окна

Сообщение pupsik » 07.08.2017 17:03:52

по правилам, это как раз именно под (т.е. с использованием) Лазаруса.
да хоть около... смысл то не меняется.

Хорошо, сейчас ты имеешь возможность сохранить свой код в транке Лазаруса? Лично я нет.
батенька: не крутите носом как вам угодно. О транке (точнее его правки) разговора не было. Код лазаря есть и подправить его можно для себя. При необходимости протолкнуть далее. А вот то что вы "крутите" ...

А это и есть блокнот с десятком дополнительных форм.
А разговор то не о вашем "блокноте"... а о сложности. Сами "прыгнули" в эту тему. Т.е. упомянули популярное сравнение: "сложнее блокнота"... А вы тут начинаете "разводить"... плагины... ругается кто то и т.п.... Я в общем плане имел в виду сложность блокнотов. :roll:

п.с.
Один фиг вы не ответите цитатой: где я советовал переписать программу.

Так что тема исчерпана (с моей стороны).
Что то, последнее время, я более обожаю логические и адекватные размышления. Нежели "причёсывание" "под себя" и нудное, странное общение без смысла и обучения.
pupsik
энтузиаст
 
Сообщения: 1017
Зарегистрирован: 20.08.2014 16:20:13

Re: Странное поведение главного окна

Сообщение Лекс Айрин » 07.08.2017 17:25:58

pupsik писал(а):Я в общем плане имел в виду сложность блокнотов. :roll:


В общем и целом, есть блокноты и посложнее моего. В чем-то даже сложнее ворда.

pupsik писал(а):Один фиг вы не ответите цитатой: где я советовал переписать программу.


Писать одно и тоже стремно. Если собеседник не понял, то проще забить и забыть.... он просто не слышит.

Повторяю крайний раз. Добавление целого модуля (в данном случае анхордокинга) к программе это и есть попытка переписать программу. Можешь, для примера скачать старый код моего блокнота и посмотреть насколько он после этого усложнился

всего этого, например, в нем не было

Код: Выделить всё
function ShowAnchorDockOptions(ADockMaster: TAnchorDockMaster): TModalResult;
var
  Dlg: TForm;
  OptsFrame: TAnchorDockOptionsFrame;
  BtnPanel: TButtonPanel;
begin
  Dlg:=TForm.Create(nil);
  try
    Dlg.DisableAutoSizing;
    Dlg.Position:=poScreenCenter;
    Dlg.AutoSize:=true;
    Dlg.Caption:={adrsGeneralDockingOptions}'options????';
    OptsFrame:=TAnchorDockOptionsFrame.Create(Dlg);
    OptsFrame.Align:=alClient;
    OptsFrame.Parent:=Dlg;
    OptsFrame.Master:=ADockMaster;

    BtnPanel:=TButtonPanel.Create(Dlg);
    BtnPanel.ShowButtons:=[pbOK, pbCancel];
    BtnPanel.OKButton.OnClick:=@OptsFrame.OkClick;
    BtnPanel.Parent:=Dlg;
    Dlg.EnableAutoSizing;
    Result:=Dlg.ShowModal;
  finally
    Dlg.Free;
  end;
end;

//эта процедура вызывается перед показом экшенов
procedure TFMain.ActionUpdate(AAction: TBasicAction; var Handled: Boolean);
var
  f:TForm;
  checked:boolean;
begin
  Handled:=true;
  if aaction is TLexShowFormAction then
  begin
      checked:=false;
      f:=tform(Screen.FindForm(TLexShowFormAction(AAction).FormName));
      if f<>nil then
        checked:=f.IsVisible;
      TLexShowFormAction(AAction).checked:= checked;
  end;
end;

procedure TFMain.FillShowFormsSubmenu(TargetMenuItem:TMenuItem);
var
  pair:TFormRegister.TFormPair;
  subitem:TMenuItem;
  sfa:TLexShowFormAction;
begin
  for pair  in FormRegister.dic do //перебираем всё что есть в регистраторе
  begin
    if TFM_CreateShowAction in pair.Value.FormOptions then  //если у найденой формы установлена опция добавления в меню
    begin
      sfa:=TLexShowFormAction.Create(ActionList1,pair.Value.FormName);
      sfa.ActionList:=ActionList1;
      sfa.Caption:={pair.Key}pair.Value.HumanReadableFormName;
      sfa.DisableIfNoHandler:=false;
      //тут будем добавлять
      //но пока пустышка
      subitem:=TMenuItem.Create(TargetMenuItem);
      subitem.Action:=sfa;
      TargetMenuItem.Add(subitem);
    end;
  end;
end;
             

И это не все дополнения. И ты предлагаешь добавлять подобный код только для того чтобы окно не теряло фокус?
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 4177
Зарегистрирован: 19.02.2013 16:54:51

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

Рейтинг@Mail.ru