Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Savet-pomoc za zadatak iz BCB6

[es] :: C/C++ programiranje :: Savet-pomoc za zadatak iz BCB6

[ Pregleda: 2559 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

igracc
Sabac

Član broj: 120855
Poruke: 162
*.inffo.net.



Profil

icon Savet-pomoc za zadatak iz BCB624.01.2007. u 21:11 - pre 209 meseci
Pozdrav
Program treba da uradim u Borland C++ 6 Builderu:
Imam zadatak da napravim igricu gde se na osnovu unetog slova ispisuju slova u poslovici(moze ih biti vise),dok se na kraju ne ispise i cela poslovica.Imam jedan problem:
--poslovica je napisana u Memo,a slova sam pojedinacno prekrio Button-ima mada moze i Labelama ,treba na osnovu unetog slova u Edit da se otkriju slova(moze ih biti vise)
--Kako da napisem kod da mi na osnovu unetog slova pretrazi Memo(odnosno poslovicu) i ukloni te Button-e ,ili Labele na mestima gde se pomenuto slovo nalazi(moze ih biti vise)

Ako neko ima drugo resenje neka predlozi
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB624.01.2007. u 22:03 - pre 209 meseci
Nije ti ideja baš najbolja (da maskiraš sa Button-ima i sl).

Evo ti jedan brz primer iz glave (zakačiću ga i u attachment), pa ga sam dorađuj:

Trebaju ti 3 TEdit-a:

Edit1 - u njemu neka bude upisana poslovica koju pogađaš (možeš i da ručno promeniš)
Edit2 - za upis JEDNOG slova (ovo podesi da prihvata samo jedno slovo)
Edit3 - Rešenje sa crticama koje se otkriva (ovo stavi Read Only)
Button1 - pokušaj pogađanja unetog slova

--- H ---
Code:

// private:
AnsiString Maskirano;
// ...

--- CPP ---

Code:

#include "StrUtils.Hpp"
// ...
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
   Edit1Change( this );
}

void __fastcall TForm1::Edit1Change(TObject *Sender)
{
   Maskirano = DupeString( '_', Edit1->Text.Length() );

   for ( int i=1; i<=Edit1->Text.Length(); i++ )
     if ( Edit1->Text[i] == ' ' )
         Maskirano[i] = ' ';
   Edit3->Text = Maskirano;
}

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   for ( int i=1; i<=Edit1->Text.Length(); i++ )
   {
      if ( UpperCase( Edit1->Text[i] ) == UpperCase( Edit2->Text[1] ) )
      {
         Maskirano[i] = Edit1->Text[i];
         Edit3->Text = Maskirano;
      }
   }
   if ( Maskirano == Edit1->Text )
      ShowMessage( "Gotovo!" );
}

Prikačeni fajlovi
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB625.01.2007. u 11:06 - pre 209 meseci
>
>
Pozdrav
Hvala za kod ,mozes li mi pojasniti samo funkcije :DupeString; UpperCase
U sustini znam sta rade ali mozes li mi to malo bolje objasniti
Pozdrav
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB625.01.2007. u 11:27 - pre 209 meseci
DupeString() pravi novi string koji je sastavljen od znakova ili teksta koji navedeš, i to određeni broj puta.
UpperCase() vraća vliko slovo (tekst). To je bitno jer u konkretnom slučaju malo i veliko slovo treba da budu
ravnopravni pri poređenju.
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB629.01.2007. u 18:41 - pre 209 meseci
>
>
Pozdrav
Imam jedno pitanje:
Kada hocu da izadjem iz programa na *X* (u gornjem desnom uglu) treba da
mi se pojavi prozor sa opcijama Yes i No(vezano za pitanje da li hocu da
napustim program).Mozes li mi to objasniti.

Drugo pitanje:
I kako da izlistavam vise labela preko indeksa (npr.
For(i=0;i<,i++)
if(Label->Caption=1)
Label->Visible�lse;
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB629.01.2007. u 19:49 - pre 209 meseci
Citat:

Kada hocu da izadjem iz programa na *X* (u gornjem desnom uglu) treba da
mi se pojavi prozor sa opcijama Yes i No(vezano za pitanje da li hocu da
napustim program).Mozes li mi to objasniti.

Potrazi u Helpu: OnClose i OnCloseQuery, imas primer:
Code:

// Primer za OnClose
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)

{
  if (MessageDlg("Close application ?", mtConfirmation, TMsgDlgButtons() << mbYes << mbNo,0) == mrYes)
    Action = caFree;
  else
    Action = caMinimize;
}

// Primer za OnCloseQuery
void __fastcall TForm1::FormCloseQuery(TObject *Sender, bool &CanClose)

{
  if (MessageDlg("Close the form?", mtConfirmation, TMsgDlgButtons() << mbOK << mbCancel,0) == mrCancel)
    CanClose = false;
}

Dakle, kada se na bilo koji nacin dodje do zatvaranja aplikacije dobices poruku koja te pita jesi li siguran.
OnCloseQuery() ce odreagovati cak i ako se ide na shutdown ili logoff.

Citat:

I kako da izlistavam vise labela preko indeksa

Prvo, ne znam na koje indekse mislis.

Ovo je pitanje za DRUGI thread. Ali evo... Ovako možeš da prođeš u petlji kroz
TLabel komponente. Inače, nisam siguran da ti je dizajn dobar. Ovo je ipak neka
vrsta overheada.

--- metod 1 ---
Code:

void __fastcall TForm1::Button1Click(TObject *Sender)
{
   for( int i = 0; i < ComponentCount; i++ )
   {
      TLabel *pLabel = dynamic_cast<TLabel*>( Components[i] );
      if( pLabel )
      {
         if ( pLabel->Caption == "1" )
         {
            // TVOJ KOD;
         }
      }
   }
}


--- metod 2 ---
Code:

// ...
#include <TypInfo.hpp>
// ...
void __fastcall TForm1::Button1Click(TObject *Sender)
{
   for( int i=0; i<ControlCount; i++ )
   {
      TControl *pCtrl = Controls[ i ];
      PPropInfo pPropInfo = GetPropInfo( pCtrl, "Caption", TTypeKinds() << tkString << tkLString << tkWString );
      if ( pPropInfo )
      {
         
         AnsiString Cpt = GetStrProp( pCtrl, pPropInfo );
         if ( Cpt == "1" )
         {
            // TVOJ KOD; 
         }
      }
   }
}

Ako zelis da ovo ispitivanje ogranicis na odredjene TLabele, a ne na sve, onda im dodaj neki
dodatni atribut npt Tag atribut postavi na jedinicu, pa neka to bude dodatni uslov:
Code:

// ...
if ( ( pLabel->Tag == 1 ) && ( pLabel->Caption == "1" ) )
// ...



[Ovu poruku je menjao X Files dana 30.01.2007. u 08:23 GMT+1]
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB631.01.2007. u 00:25 - pre 209 meseci
>
>
Pozdrav
Napravio sam glavni prozor gde se igra odvija(Form1),Help(Form2):
Hteo sam da dodam jos jedan Form3 koji ce mi se prvi pojavljivati,kada
se na njega klikne ide se na glavni za igru(Form1),a Form(3)postaje
nevidljiv.
Napisem kod za te operacije i on mi izbacuje i (Form3)i(Form1)
Pitanje:da li ima veze kojim su redom Form-ovi pravljeni,,da li je
trebalo da napravim (Form1 za pocetak),,(Form2 kao glavni),,(Form3 za
Help) ili to nema veze.
Pozdrav
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB631.01.2007. u 06:40 - pre 209 meseci
Generalno nema veze kojim redosledom se forme kreiraju. Doduše, samo jedna forma može biti glavna,
a to se vidi tako što je na prva u listi inicijalnizacije u Project1.cpp:

--- Project1.cpp ---
Code:

try
{
         Application->Initialize();
         Application->CreateForm(__classid(TForm1), &Form1); // <--- GLAVNA FORMA
         Application->CreateForm(__classid(TForm2), &Form2);
// ...


Redosled se eventualno može promeniti na dva načina:

* Ručno (samo zameni mesta te dve linije)
* Kroz IDE: Project > Options > Forms > Main Form [izabei koja hoćeš da bude glavna]

Pre glavne forme je moguće prikzati i neku drugu formu (na primer Splash Screen), a taj kod treba da bude
u Project1.cpp, pre inicijalizacije.

To sto ti se forme prikazuju zajedno, problem je do tvog koda. Te forme koje prethode u prikazu glavnoj formi,
najbolje je (a mislim da i moraju) da budu kreirane DINAMIČKI, tj. da se ne vide u listi inicijalnizacije.

--- Project1.cpp ---
Code:

try
{
         Application->Initialize();
         Application->CreateForm(__classid(TForm1), &Form1);
         /* ... UKLONILI SMO OVU LINIJU ... */
// ...


Uklanjanje se vrši na dva načina:

* Ručno (samo ukloni liniju)
* Kroz IDE: Project > Options > Forms Prebaciti Form2 iz AutoCreate u Available sekciju.

Kasnije se ta forma 2 (koja i dalje postoji, ali se ne vidi u listi) može:

1. kreirati (new)
2. prikazati (Show, ShowModal)
3. ukloniti (delete)
...pre prikaza glavne forme.

--- Project1.cpp ---
Code:

try
{
         Form2 = new TForm2( NULL );
         Form2->ShowModal();
         delete Form2;

         Application->Initialize();
         Application->CreateForm(__classid(TForm1), &Form1);
         Application->Run();


Eto, to je to.

[Ovu poruku je menjao X Files dana 31.01.2007. u 08:19 GMT+1]
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB631.01.2007. u 22:50 - pre 209 meseci
>
>
Pozdrav
Izvini ako sam malo dosadan. Treba mi jedan savet:
Kakvu bi mi literaturu preporucio za Borland posto na nasem jeziku nema
nista prevedeno,ili ako imas ti nesto pa da mi posaljes ako moze.
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB601.02.2007. u 06:34 - pre 209 meseci
Poslao sam PP.
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB601.02.2007. u 18:20 - pre 209 meseci
>
>
Pozdrav
Izvini nisam te razumeo
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.dynamic.sbb.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB601.02.2007. u 18:22 - pre 209 meseci
PP = Privatna poruka

Imaš taster privatna poruka, pored profila. Tu sam ti ostavio par linkova gde možeš pronaći nešto literature za BCB.
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB601.02.2007. u 22:24 - pre 209 meseci
>
>
Ne mogu da se snadjem.Kliknem na PP on mi izbaci prozor za slanje PP
(Prazan bez linkova).
Sta treba ustvari da uradim
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB602.02.2007. u 08:03 - pre 209 meseci
U vrhu stranice imaš neki meni:

Moj Profil | Mailing liste | Praćenje tema | Brze liste ▲▼ | Privatne poruke (1) | ▲▼ ES-mods

... treba da klikneš na: Privatne poruke (1) i dalje će ti se sve samo kaz'ti.
 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB605.02.2007. u 14:00 - pre 209 meseci
>
>
Pozdrav
Mozda sam malo dosadan ali sta da se radi,treba mi odgovor sto pre:

Mozes li mi objasniti biblioteku

#include "StrUtils.Hpp" zasta sluzi;sta sadrzi...
Pozdrav
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB606.02.2007. u 06:13 - pre 209 meseci
Ovo moraš sam da pogledaš u BCB Help/Index: StrUtils routines

To je biblioteka funkcija za rad sa stringovima. Ima obilje primera.

 
Odgovor na temu

igracc
Sabac

Član broj: 120855
Poruke: 162
*.net
Via: [es] mailing liste



Profil

icon Re: Savet-pomoc za zadatak iz BCB607.02.2007. u 13:22 - pre 209 meseci
>
>
Pozdrav
Posto nema knjige na srpskom iz BC++B6 mislio sam da kupim neku knjigu
za Delphi posto je to isto izbacio Borland ,a razvojno okruzenje je
vise manje isto.Mozes li neku knjigu eventulano da mi preporucis
(pocetni- srednje nivo)
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.tekostolac.co.yu.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Savet-pomoc za zadatak iz BCB607.02.2007. u 13:29 - pre 209 meseci
Slabo se razumem u Delphi literaturu, mada sam ima nekoliko knjiga, uglavnom
od Kenta Reisdorpha (ako sam dobros spelovao ime).

Ovo uvek možeš da pitaš na Delphi forumu.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Savet-pomoc za zadatak iz BCB6

[ Pregleda: 2559 | Odgovora: 17 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.