Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.28;
Скачать: CL | DM;

Вниз

Создание кнопки программно   Найти похожие ветки 

 
Zeqfreed ©   (2007-10-03 18:39) [40]

> Dib@zol ©   (03.10.07 17:07) [38]

Ой, мамочки.


 
Dib@zol ©   (2007-10-03 18:45) [41]

Может и есть. Но я полный дуб в ВЦЛ, поэтому дело за вами.


 
korneley ©   (2007-10-03 18:57) [42]

Ну утомила уже эта бодяга (не губка)... пишешь метод типа:
TForm1.ButtonClick(Sender: TObject), в котором вызываешь, че-нить типа [30], создаешь кнопку, пусть это будет Button1, далее:
Button1.OnClick := ButtonClick; По нажатию Button1 все, что в теле ButtonClick исполнится... Алилуйя!


 
Юрий Зотов ©   (2007-10-03 21:46) [43]

> Dib@zol ©   (03.10.07 18:45) [41]

Тогда зачем давать начинающим советы уровня API? Вы понимаете, что такими советами Вы только их запутываете и ничего больше?


 
Dib@zol ©   (2007-10-03 22:22) [44]

> Юрий Зотов ©   (03.10.07 21:46)

Понимаю. И даже сам другим частенько об этом напоминаю. А сегодя вот вдруг накатило... Ну туплю сегодня, ну отосплюсь и всё пройдёт...


 
Mariya   (2007-10-04 07:30) [45]

Доброго нового дня! Это все получилось!

> Алилуйя!

Осталось почти последнее, что я упустила, а как программно задать размеры формы? На которой все это и рисуется. Я пишу так:

Form1.Caption:=Ini.ReadString("Form", "Cap", "Навигатор");
Form1.Height:=Ini.ReadInteger("Form", "Height", 500);
Form1.Width:=Ini.ReadInteger("Form", "Width", 700);
Игнорирует, не ставит по умолчанию 500 на 700.

А! Еще, насчет меню, само меню создала, а как вкладки прописать?


 
Mariya   (2007-10-04 07:43) [46]

Уже утро, просыпайтесь! Помогите свеженачинающей! :)


 
engine ©   (2007-10-04 08:12) [47]

Default is an integer value to use if there is no key corresponding to Section or no data value corresponding to Ident.


 
Mariya   (2007-10-04 08:33) [48]

Sorry? What does it mean???


 
engine ©   (2007-10-04 09:06) [49]

> [48] Mariya   (04.10.07 08:33)

Это выдержка из help"а к функции ReadInteger.


 
Mariya   (2007-10-04 09:14) [50]

Подскажите, plz, как создать программно меню, по подобию боттона не получается.


 
Kolan ©   (2007-10-04 09:27) [51]

> по подобию боттона

Где-то так:

function TMenuInsertColleague.AddMenuItem(MainMenu: TMainMenu;
 MenuData: TMenuItemData): Boolean;
var
 I: Integer;
 TempMenuItem: TMenuItem;
begin
 Result := False;
 if Assigned(MenuData) and Assigned(MainMenu) then
 begin
   for I := 0 to MainMenu.Items.Count — 1 do
   begin
     {Ищем куда вставить пункт. MenuData.Section, например может быть «Файл» или «Правка». То есть пункт «верхнего уровня»}
     if MainMenu.Items[I].Caption = MenuData.Section then
     begin
       {Собссно создание пункта}
       TempMenuItem := TMenuItem.Create(MainMenu);
       TempMenuItem.Caption := MenuData.Caption;
       TempMenuItem.ImageIndex := MenuData.ImageIndex;
       TempMenuItem.Tag := Integer(MenuData.CommandClass);
       TempMenuItem.OnClick := MenuClickEvent;
       {Добавление созданого пункта в меню.}
       MainMenu.Items[I].Add(TempMenuItem);
       Result := True;
       {Выход}
       Exit;
     end;
   end;
   {Если «верхний» пункт меню не найден(не вышли в Exit), то он создаётся.}
   TempMenuItem := TMenuItem.Create(MainMenu);
   TempMenuItem.Caption := MenuData.Section;
   MainMenu.Items.Add(TempMenuItem);
   {Рекурсивно вызывается создание пункта.}
   Result := AddMenuItem(MainMenu, MenuData);
 end;
end;


TMenuItemData — тебе не нужен. Там хронятся строки типа «имя пункта» меню итд&#133

Но для ясности даю и его:

TMenuItemData = class
 strict private
   FSection: string;      
   FCaption: string;
   FCommandClass: TCustomCommandClass;
   FImageIndex: Integer;
 public
   constructor Create(Section: string; Caption: string;
     CommandClass: TCustomCommandClass; ImageIndex: Integer = —1);

   property Section: string read FSection;
   property Caption: string read FCaption;
   property CommandClass: TCustomCommandClass read FCommandClass;
   property ImageIndex: Integer read FImageIndex;
 end;


 
Mariya   (2007-10-04 09:34) [52]

Ой, спасибо, но не думала, что так сложно! Буду пробовать...


 
Kolan ©   (2007-10-04 09:43) [53]

> Ой, спасибо, но не думала, что так сложно! Буду пробовать&#133

Можно все сильно упростить — это кусок из проекта. Тебе достаточно:

TempMenuItem := TMenuItem.Create(MainMenu);
      TempMenuItem.Caption := "Мой пункт";
      TempMenuItem.OnClick := MenuClickEvent; // <&#151; Клик
      {Добавление созданого пункта в меню.}
      MainMenu.Items[I].Add(TempMenuItem);


Где:
MainMenu.Items[I] &#151; это пункт верхнего уровня например &laquo;Файл
&raquo;


 
Mariya   (2007-10-04 12:44) [54]


> TempMenuItem := TMenuItem.Create(MainMenu);
>       TempMenuItem.Caption := "Мой пункт";
>       TempMenuItem.OnClick := MenuClickEvent; // <— Клик
>       {Добавление созданого пункта в меню.}
>       MainMenu.Items[I].Add(TempMenuItem);

Выдает ошибки. Неизвестно MenuClickEvent и OnClick


 
clickmaker ©   (2007-10-04 12:50) [55]

MenuClickEvent это обработчик
его надо написать


 
Mariya   (2007-10-04 12:54) [56]

А Как?


 
clickmaker ©   (2007-10-04 12:59) [57]

Мария, ты издеваешься?
см [2]


 
Palladin ©   (2007-10-04 13:08) [58]

Напишите Mariya кто нибудь программу...


 
Mariya   (2007-10-04 13:48) [59]


> Мария, ты издеваешься?

НЕТ! Уже все получилось, Спасибо всем ОГРОМНОЕ!!!


 
Mariya   (2007-10-04 14:43) [60]

Как в

if MessageDlg("Выйти?",mtConfirmation,[mbYes,mbNo],0)=mrYes then.....

написать, чтобы вместо Yes и No было ДА и НЕТ?


 
clickmaker ©   (2007-10-04 14:45) [61]

MessageBox() на русской винде покажет Да и Нет


 
Anatoly Podgoretsky ©   (2007-10-04 14:45) [62]

> Mariya  (04.10.2007 14:43:00)  [60]

MessageBox


 
Mariya   (2007-10-04 14:48) [63]

Thank you!


 
Amoeba ©   (2007-10-04 19:36) [64]


> эта бодяга (не губка)

если губка, то тогда уж бадяга = Spongilla lacustris.


 
korneley ©   (2007-10-04 22:12) [65]


> если губка, то тогда уж бадяга = Spongilla lacustris.
Ok, экселенц



Страницы: 1 2 вся ветка

Текущий архив: 2007.10.28;
Скачать: CL | DM;

Наверх




Память: 0.59 MB
Время: 0.02 c
2-1191784004
Альберт
2007-10-07 23:06
2007.10.28
потоки


2-1191764984
alikon1
2007-10-07 17:49
2007.10.28
Изображение в БД


15-1190994505
TwentyTwo
2007-09-28 19:48
2007.10.28
Может ли компьютер быть судьей?


15-1191063036
tmp
2007-09-29 14:50
2007.10.28
Pierre le Riche, Delphi 2005 Lite


15-1190882465
новЫчек
2007-09-27 12:41
2007.10.28
загрузка своего приложения в авторане