ďťż

Ładny brzuch

Mam w MainMenu pozycje do dowania nowej formy (nowe okno z opcjami ) i menu z komponentami. Jak jednak wprowadzić to w życie?? Jak kliknie OK przy tworzeniu nowej formy ona się utworzy i zostanie dodana pozycja w MainMenu->Formy. A jak kliknie na wybrany komponent pojawią się jego funkcje i okno z opcjami. Szukałęm tego na forach i googlach, ale nie ma. Prosił bym o gotowy kod lub jego zarys.
Z góry dziękuję!




Mam w MainMenu pozycje do dowania nowej formy (nowe okno z opcjami ) i menu z komponentami. Jak jednak wprowadzić to w życie?? Jak kliknie OK przy tworzeniu nowej formy ona się utworzy i zostanie dodana pozycja w MainMenu->Formy. A jak kliknie na wybrany komponent pojawią się jego funkcje i okno z opcjami. Szukałęm tego na forach i googlach, ale nie ma. Prosił bym o gotowy kod lub jego zarys.
Z góry dziękuję!

gotowy kod? a regulamin czytales? :>
tworzysz dynamicznie forme, i menuitema. formy przechowujesz w jakiejs liscie/tablicy (TList sie doskonale nadaje )
edycja wlasciwosci komponentow to sprawa trudniejsza, ale mozliwa. poczytaj o RTTI

reszty nie pomoge, bo nie wiem skad w twojej historii bierze sie "OK przy tworzeniu formy", skad sie biora wybrane komponenty (sa na formach? :mellow: ) i jaki to ma wszystko zwiazek z "oknami z opcjami" :)


reszty nie pomoge, bo nie wiem skad w twojej historii bierze sie "OK przy tworzeniu formy", skad sie biora wybrane komponenty (sa na formach? :mellow: ) i jaki to ma wszystko zwiazek z "oknami z opcjami" :)
Zacznę od końca.
"Okno z opcjami" to nowa forma z opcjami, np. po nałożeniu komponentu TEdit pojawi się okno z możliwością podania pola tekst, width, height, name.
Komponenty są pozycjami w MainMenu->Komponenty
OK to buttom potwierzenia.


Zacznę od końca.
"Okno z opcjami" to nowa forma z opcjami, np. po nałożeniu komponentu TEdit pojawi się okno z możliwością podania pola tekst, width, height, name.
Komponenty są pozycjami w MainMenu->Komponenty
OK to buttom potwierzenia.

ok, wiec odpowiedz masz wyzej: dynamiczne tworzenie i RTTI :)
jak bardzo nie chcesz pisac nic wlasnego to na torry jest kilka runtime object inspectorow :)




ok, wiec odpowiedz masz wyzej: dynamiczne tworzenie i RTTI :)
jak bardzo nie chcesz pisac nic wlasnego to na torry jest kilka runtime object inspectorow :)

A mam pytenie: Co to jest RTTI?

A ja mam pytanie: do czego służy Google i spółka?

http://pl.wikipedia.org/wiki/RTTI

Dzięki DJ_ProG :)

Mam problem.
Aby utworzyć na formie w działającym programie button, to przycisk, którym się go tworzy, powinien mieć jakie zdarzenie onclick?!
TForm.Create.Button???

Nie, nie takie.

var vButton: TButton; begin vButton := TButton.Create(self); vBuutton.Caption := 'dynamicznie tworzony przycisk'; {inne wlasciwosci} end;

Super. Dzięki.
A jak dynamicznie stworzyć nową pozycję w MainMenu->Programy?
Mam do tego nowe okno z możliwością podania Caption pozycjii
Odwołuje się do niego tak:
with FUKat do begin eNazwaKat.Text:=''; Tag:=0; ShowModal; if Tag=1 then UtNazwaKat:=FUKat.eNazwaKat.Text;
i dalej nie wiem :(

Analogicznie:

var vItem: TMenuItem; begin vItem := TMenuItem.Create(Programy1); vItem.Caption := 'Caption pozycji Menu'; Programy1.Insert(0, vItem);

Programy1 - tak zapewne nazywa się pozycja w Menu, która ma Caption 'Programy'. Chyba, że sam zmieniłeś na inną.
Użytkownik p1101 edytował ten post 09 sierpień 2006, 10:00
No to dochodzę już do końca.
Jeszcze mam tylko kilka pytań.
oto 1. Jak stworzyć nową formę?
A na formie do tworzenia nowej pozycjii w MainMenu mam pozycje TListBox z możliwością wyboru pozycjii w menu Programy. Chodzi o tworzenie SubMenu. Jak pokazać w TListBox'ie pozycje z ManinMenu->Programy? Wiem, że powinien być jakiś kod w polu Items->Code Editor... .


oto 1. Jak stworzyć nową formę?
Poczytaj wreszcie o tym tworzeniu dynamicznym - wszystkie komponenty tworzy się bardzo podobnie. Więc korzystając z dwóch poprzednich kodów, które podałem stworz ją samemu.

I zmień sposób zadawania pytań, bo nie wiaodmo o co chodzi.

do tworzenia nowej pozycjii w MainMenu mam pozycje TListBox z możliwością wyboru pozycjii
p1101 nie rozumieć.


Jak pokazać w TListBox'ie pozycje z ManinMenu->Programy?

var i: WORD; begin for i := 0 to Pred(Programy1.Count) do ListBox1.Items.Add(Programy1.Items[i].Caption); end;

W TListBox mają być zawarte pozycje z pozycjami w MainMenu->Programy. Chciałbym, aby nowa pozycja była podpinana do pozycji wybranej w TListBox'ie.
np. Ktoś utworzył wcześniej pozycje Moje programy. Teraz tworzy nową pozycję i chcę aby była w tej kategorii, którą kliknie z TListBox'ie. Czyli ja kliknie Moje programy to utworzy pozycje w MainMenu->Moje programy->Nowa pozycja.

A gdzie mam dać ten kod??
var i: WORD; begin for i := 0 to Pred(Programy1.Count) do ListBox1.Items.Add(Programy1.Items[i].Caption); end;

bierzesz wszystkie itemy z main menu -> programy, wstawiasz ich captiony do ListBoxa a pozniej sprawdzasz ktora pozycja LB jest wybrana, znajdujesz jej odpowiednik w menu (petla) i do znalezionego obiektu dodajesz menu itema


bierzesz wszystkie itemy z main menu -> programy,
Ale jak to zrobić dynamicznie? :blink: Użytkownik programu może dodać nawet 100 pozycjii do menu. A ja nie wiem jak je dynamicznie spisać :(:(

A co do tworzenia formy. Prubowałem to zrobić na podstawie powyższych postów, ale nie potrafię :(:(
Oto kod
procedure TForm1.Button1Click(Sender: TObject); Form2 : TForm; begin Form2 := TForm.Create(Self); Form2.Parent:=Self; Form2.Top := 50; Form2.Left := 50; Form2.Width := 100; Form2.Height := 50; Form2.Show; end;
Użytkownik Arturm52 edytował ten post 10 sierpień 2006, 08:54

Ale jak to zrobić dynamicznie? :blink: Użytkownik programu może dodać nawet 100 pozycjii do menu. A ja nie wiem jak je dynamicznie spisać :(:(
W pętli. Właściwość Count zawiera liczbę wszystkich pozycji w menu. Przykładowo mProgramu.Count. Więc wiesz już ile użytkownik dodał pozycji. W pętli każdą pozycję (w zasadzie jej Caption) zapisujesz do INI jako String.

A co do tworzenia formy. Prubowałem to zrobić na podstawie powyższych postów, ale nie potrafię :(:(
Oto kod

Próbowałem*

Jesteś blisko :) Zapomniałeś o słówku var przed Form2: TForm; A i Self lepiej zamienić na Application (badź nil jeśli chcesz)
Użytkownik p1101 edytował ten post 10 sierpień 2006, 11:05
Dzięki p1101 :) :) . Pozostaje pytanie. Jak podać Zdarzenie onclick otwierające stworzoną formę do twoerzonoego w trakcie programu pozycjii w MainMenu?
vItem.onclick := PChar(eNazwaPozycjii.Text).Show
************************
eNazwaPozycji to Edit, w którym podaje się Caption i Name tworzonej formy i pozycjii w Menu.
I jak poprzedzić nazwę tworzonej formy (Name) literom f?
Użytkownik Arturm52 edytował ten post 11 sierpień 2006, 12:33
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • zsf.htw.pl
  •