CYFROWY BARON • PROGRAMOWANIE • Zobacz wątek - Tworzenie gry w karty - Pasjans.

Tworzenie gry w karty - Pasjans.

dział ogólny

Tworzenie gry w karty - Pasjans.

Nowy postprzez czeri » środa, 26 stycznia 2011, 15:41

Witam, czy jest jakaś funkcja pozwalająca na posortowanie elementów TImageList
Robie grę w karty, i chchiałbym jakoś posortować karty które są przechowywane w TImageList-ach a później są ładowane do poszczególnych Timage, druga sprawa to jak z jednego TimageList przenieść elementy do drugiego TImageList.
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    MacintoshSafari

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » środa, 26 stycznia 2011, 20:59

TImageList przechowuje ikony i bitmapy, którym zawsze przypisywany jest kolejny indeks z listy. Indeksów posortować się nie da, ImageList nie przechowuje nazw wczytanych ikon i bitmap, więc według jakich kryteriów chcesz sortować tą listę? Jak wyobrażasz sobie to sortowanie.


druga sprawa to jak z jednego TimageList przenieść elementy do drugiego TImageList.


Czy chodzi o przeniesienie całej zawartości jednej listy do drugie? Jeżeli tak, można to zrobić w ten sposób:

KOD cpp:     UKRYJ  
ImageList2->Assign(ImageList1);


lub:

KOD cpp:     UKRYJ  
 ImageList2->AddImages(ImageList1);


Jeżeli natomiast chcesz skopiować pojedynczą ikonkę z ImageList1 do ImageList2 niezależnie czy to jest ikona czy bitmapa to postępujesz tak:

KOD cpp:     UKRYJ  
 ImageList2->AddImage(ImageList1, 1);
 Button2->Invalidate();


Pierwszy argument funkcji AddImage to obiekt typu TImageList z którego ikona jest kopiowana, a drugi argument to numer kopiowanej ikony. Kopiowana ikona zawsze jest wstawiana na pierwszą pozycję na liście. Dla obiektu który pobiera ikony z listy ImageList2 trzeba wywołać funkcję wymuszającą jego przerysowanie, czyli Invalidate lub Repaint.

Jeżeli lista ImageList2 zawiera już jakieś ikony, a Ty chcesz wstawić nowe w ściśle określonej pozycji względem istniejących ikon to używasz funkcji Insert:

KOD cpp:     UKRYJ  
#include <memory>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 std::auto_ptr<Graphics::TBitmap> tBmp(new Graphics::TBitmap);
 /* druga bitmapa potrzebna by uzyskać przeźroczystość we wcześniejszych
    wersjach środowiska C++Builder */

 std::auto_ptr<Graphics::TBitmap> mBmp(new Graphics::TBitmap);

 tBmp->Width  = ImageList1->Width;
 tBmp->Height = ImageList1->Height;

 mBmp->Width  = ImageList1->Width;
 mBmp->Height = ImageList1->Height;


 ImageList1->Draw(tBmp->Canvas, 0, 0, 2, true); /* wstawiam trzecią ikonę z listy licząc od 0 */
 ImageList1->Draw(mBmp->Canvas, 0, 0, 2, false); /* tworzę maskę dla przeźroczystości */

 ImageList2->Insert(3, tBmp.get(), mBmp.get()); /* wstawiam ikonę w 3 pozycji licząc od 0 tylko jeżeli lista zawiera co najmniej 3 pozycje */

 Button2->Invalidate();
}


W C++Builder 2009 i 2010 jest to trochę prostsze:

KOD cpp:     UKRYJ  
#include <memory>
void __fastcall TForm1::Button6Click(TObject *Sender)
{

 ImageList2->AddImage(ImageList1, 1);

 std::auto_ptr<Graphics::TBitmap> tBmp(new Graphics::TBitmap);

 tBmp->Width  = ImageList1->Width;
 tBmp->Height = ImageList1->Height;

 ImageList1->Draw(tBmp->Canvas, 0, 0, 2, true); /* wstawiam trzecią ikonę z listy licząc od 0 */
 ImageList1->Draw(mBmp->Canvas, 0, 0, 2, false); /* tworzę maskę dla przeźroczystości */

 ImageList2->ColorDepth = cd32Bit;
 ImageList2->Insert(0, tBmp.get(), NULL);

 Button2->Invalidate();
}


W celu zamiany ikon miejscami należy posłużyć się funkcją Move:

KOD cpp:     UKRYJ  
ImageList2->Move(0, 1);


W przykładzie z pozycji 0 na pozycję 1.

W celu usunięcia ikony należy posłużyć się funkcją Delete:

KOD cpp:     UKRYJ  
 ImageList2->Delete(1);


W przykładzie usunięta zostanie ikona z pozycji 1. Na jej miejsce wskoczy ikona kolejna na liście.

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
czeri
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » środa, 26 stycznia 2011, 21:32

Dzięki Wielkie Cyfrowy Baronie. Jeśli chodzi o sortowanie to się może troche źle wyraziłem i nie sprecyzowałem, chodzi mi bardziej o losowe ich posortowanie. Gdyż robie pasjansa i musze jakoś wymusić każdoroazowo inne ustawienie bitmap. Miałem taki pomysł, że załaduje wszystkie karty do jednego ImageList-a, tam je przetasuje i później załaduje tak przetasowane karty do odpowiednich ImageList
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    MacintoshSafari

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » środa, 26 stycznia 2011, 22:35

Proponuję więc takie losowe tasowanie ikon w ImageList:

KOD cpp:     UKRYJ  
#include <algorithm>

void __fastcall TForm1::Button1Click(TObject *Sender)
{
 /* liczby w tablicy reprezentują karty, ile kart tyle liczb. Liczby nie są
 przypisane do kart, służą tylko do losowego sortowania. Należy koniecznie
 wprowadzać kolejne liczby od 1, czyli: 1, 2, 3, 4, 5, 6, itd... */


 int tabInt[] = {1, 2, 3, 4, 5};

 std::random_shuffle(tabInt, tabInt + 5); /* tabInt + liczba kart */

 for(int i = 0; i < 5; i++) /* int i = koniecnzie 0, i < liczba kart */
 {
  ImageList1->Move(i, tabInt[i]);
 }
}

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
czeri
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » środa, 26 stycznia 2011, 22:45

Zapomniałem dodać, że na starcie programu należy uruchomić generator liczb losowych w przeciwnym razie za każdym razem będą losowane te same liczby. Generator uruchamia się tylko raz i można to zrobić w konstruktorze klasy formularza głównego, w zdarzeniu OnShow lub zdarzeniu OnCreate - tylko w jednym. Wielokrotne uruchamianie generatora nic nie daje, gdyż raz uruchomiony generator działa do końca programu.
KOD cpp:     UKRYJ  
 randomize();
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » środa, 26 stycznia 2011, 23:49

KOD cpp:     UKRYJ  
 ImageList2->AddImage(ImageList1, 1);


Niewiem czemu, ale wywala mi błąd, że AddImage nie jest członkiem klasy TImageList (mój kompilator to c++ builder ver. 6)
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    MacintoshSafari

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » czwartek, 27 stycznia 2011, 09:59

Najwyraźniej w C++Builder 6 klasa TImageList nie zawiera metody AddImage. Zajrzyj do pliku pomocy i sprawdź metody tej klasy, ja nie mam takiej możliwości, gdyż używam tylko C++Builder 2010.


Rozwiązanie z TImageList jest kiepskie, gdyż jak już wcześniej wspomniałem ten obiekt przechowuje tylko grafiki, ale bez nazw, więc nawet jak posortujesz losowo to oczywiście karty będą losowo posortowane, jednak po pobraniu indeksu z ImageList nie będziesz wiedział co to za karta, gdyż jedyne informacje jakie zwróci lista to grafika i numer indeksu z listy.

Powinieneś oprzeć to raczej na tablicy asocjacyjnej, tzw. mapach. Podobny temat był już poruszany w tym wątku: http://programowanie.cal.pl/forum/viewtopic.php?f=2&t=1064&start=30#p7050. Można by również posłużyć się wektorami, ale to zależy od Twoich potrzeb.



Uzupełnij profil użytkownika o nazwę systemu operacyjnego i kompilator.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » czwartek, 27 stycznia 2011, 17:44

Korzystając z linku który mi podałeś, to myślałem, żeby oprzeć logikę na TStringList-ach zacząłem od takiego czegoś:

Kod: Zaznacz cały
TALIA= new TStringList();

        TALIA->Add("2 trefl=2");
        TALIA->Add("3 trefl=3");
        TALIA->Add("4 trefl=4");
        TALIA->Add("5 trefl=5");
        TALIA->Add("6 trefl=6");
        TALIA->Add("7 trelf=7");
        TALIA->Add("8 trefl=8");
        TALIA->Add("9 trefl=9");
        TALIA->Add("10 trefl=10");
        TALIA->Add("Walet trefl=11");
        TALIA->Add("Dama trefl=12");
        TALIA->Add("Król trefl=13");
        TALIA->Add("As trefl=14");
        itd...



Teraz pytanie jak przypisać do pierwszego elementu listy obrazek karty 2 trefl, do drugiego obrazek karty 3 trefl itd... i jak ładować teraz obrazki bo chyba nie przez ImgeList-e
Jeśli chodzi o moje potrzeby to póki co chodzi o to żeby to w miarę działało i nie było zbyt trudne do oprogramowania bo dopiero co zaczynam przygodę z programowaniem w środowisku graficznym.
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » czwartek, 27 stycznia 2011, 19:28

Ja oparłbym to na wektorach, karty wrzuciłbym do zasobów programu. Wektor przechowywałby nazwy karty, które byłyby jednocześnie identyfikatorami do zasobów. Znajdę chwilę to zrobię przykładowa aplikację, Ty jednak używasz systemu MAC więc nie wiem, czy będziesz miał gdzie ten program odpalić. Nie wiem też jak to jest z plikami w MAC.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » czwartek, 27 stycznia 2011, 19:33

Mój gospodarz to system Mac, ale akurat do tego projektu używam wirtualnej maszyny z windowsem xp
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » czwartek, 27 stycznia 2011, 19:56

Zakładam, że masz już pliki graficzne z kartami, więc wrzuć je na forum w załączniku, bo nie chce mi się tworzyć własnych.
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » czwartek, 27 stycznia 2011, 20:37

Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » czwartek, 27 stycznia 2011, 21:54

Stworzyłem maksymalnie prosty projekt, wykorzystujący wektory. Projekt wymaga dwóch plików zasobów:

cards.rc
KOD text:     UKRYJ  
I9_PIK BITMAP "Cards\9_PIK.bmp"
I10_PIK BITMAP "Cards\10_PIK.bmp"
WALET_PIK BITMAP "Cards\WALET_PIK.bmp"
DAMA_PIK BITMAP "Cards\DAMA_PIK.bmp"
KROL_PIK BITMAP "Cards\KROL_PIK.bmp"
AS_PIK BITMAP "Cards\AS_PIK.bmp"
I9_KIER BITMAP "Cards\9_KIER.bmp"
I10_KIER BITMAP "Cards\10_KIER.bmp"
WALET_KIER BITMAP "Cards\WALET_KIER.bmp"
DAMA_KIER BITMAP "Cards\DAMA_KIER.bmp"
KROL_KIER BITMAP "Cards\KROL_KIER.bmp"
AS_KIER BITMAP "Cards\AS_KIER.bmp"
I9_KARO BITMAP "Cards\9_KARO.bmp"
I10_KARO BITMAP "Cards\10_KARO.bmp"
WALET_KARO BITMAP "Cards\WALET_KARO.bmp"
DAMA_KARO BITMAP "Cards\DAMA_KARO.bmp"
KROL_KARO BITMAP "Cards\KROL_KARO.bmp"
AS_KARO BITMAP "Cards\AS_KARO.bmp"
I9_TREFL BITMAP "Cards\9_TREFL.bmp"
I10_TREFL BITMAP "Cards\10_TREFL.bmp"
WALET_TREFL BITMAP "Cards\WALET_TREFL.bmp"
DAMA_TREFL BITMAP "Cards\DAMA_TREFL.bmp"
KROL_TREFL BITMAP "Cards\KROL_TREFL.bmp"
AS_TREFL BITMAP "Cards\AS_TREFL.bmp"


id_cards.rc
KOD text:     UKRYJ  
#define I9_PIK 1
#define I10_PIK 2
#define WALET_PIK 3
#define DAMA_PIK 4
#define KROL_PIK 5
#define AS_PIK 6
#define I9_KIER 7
#define I10_KIER 8
#define WALET_KIER 9
#define DAMA_KIER 10
#define KROL_KIER 11
#define AS_KIER 12
#define I9_KARO 13
#define I10_KARO 14
#define WALET_KARO 15
#define DAMA_KARO 16
#define KROL_KARO 17
#define AS_KARO 18
#define I9_TREFL 19
#define I10_TREFL 20
#define WALET_TREFL 21
#define DAMA_TREFL 22
#define KROL_TREFL 23
#define AS_TREFL 24


STRINGTABLE
BEGIN
I9_PIK "I9_PIK"
I10_PIK "I10_PIK"
WALET_PIK "WALET_PIK"
DAMA_PIK "DAMA_PIK"
KROL_PIK "KROL_PIK"
AS_PIK "AS_PIK"
I9_KIER "I9_KIER"
I10_KIER "I10_KIER"
WALET_KIER "WALET_KIER"
DAMA_KIER "DAMA_KIER"
KROL_KIER "KROL_KIER"
AS_KIER "AS_KIER"
I9_KARO "I9_KARO"
I10_KARO "I10_KARO"
WALET_KARO "WALET_KARO"
DAMA_KARO "DAMA_KARO"
KROL_KARO "KROL_KARO"
AS_KARO "AS_KARO"
I9_TREFL "I9_TREFL"
I10_TREFL "I10_TREFL"
WALET_TREFL "WALET_TREFL"
DAMA_TREFL "DAMA_TREFL"
KROL_TREFL "KROL_TREFL"
AS_TREFL "AS_TREFL"
END


W podkatalogu Cards katalogu projektu potrzebne są oczywiście bitmapy z kartami, które zostaną umieszczone w zasobach. Widać to w załączonym projekcie.

Plik nagłówkowy Unit1.h:
KOD cpp:     UKRYJ  
//---------------------------------------------------------------------------

#ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>

#include <vector>
//---------------------------------------------------------------------------
using namespace std;

class TForm1 : public TForm
{
__published:    // IDE-managed Components
        TPanel *Panel1;
        TPaintBox *PaintBox1;
        TButton *Button1;
        TButton *Button2;
        void __fastcall PaintBox1Paint(TObject *Sender);
        void __fastcall Button1Click(TObject *Sender);
        void __fastcall Button2Click(TObject *Sender);
private:        // User declarations
        void __fastcall LoadCardToVector(void);
        void __fastcall DealCards(void);
        void __fastcall ShuffleCards(void);
        void __fastcall DrawCards(void);

        vector<String> vCards;

        bool dealCards;

public:         // User declarations
        __fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif


Plik źródłowy Unit1.cpp
KOD cpp:     UKRYJ  
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include "Unit1.h"
#include <memory>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"

TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
 randomize();

 LoadCardToVector();

 dealCards = false;
}
//---------------------------------------------------------------------------
void __fastcall TForm1::LoadCardToVector(void)
{
 for(int i = 1; i <= 24; i++)
 {
  vCards.push_back(LoadStr(i));
 }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DealCards(void)
{
 dealCards = true;
 PaintBox1->Invalidate();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ShuffleCards(void)
{
 for(int i = 0; i < 4; i++) /* czterokrotne tasowanie */
   random_shuffle(vCards.begin(), vCards.end());

 DrawCards();

 PaintBox1->Invalidate();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::DrawCards(void)
{
 auto_ptr<Graphics::TBitmap> bCard(new Graphics::TBitmap);
 bCard->Width  = 114;
 bCard->Height = 154;

 int m = 10; // margines
 int s = 4; // przerwa między kartami

 int l = 0, t = 0;
 for(int i = 0; i < vCards.size(); i++)
 {
  bCard->LoadFromResourceName((int)HInstance, vCards[i]);

  if( (i % 6) == 0 && i > 0)
  {
   l = 0;
   t += 164;
  }

  int cLeft = m + (l * s) + (l * bCard->Width);
  int cTop  = m + t;

  PaintBox1->Canvas->Draw( cLeft, cTop, bCard.get());

  l++;
 }
}
//---------------------------------------------------------------------------
void __fastcall TForm1::PaintBox1Paint(TObject *Sender)
{
 if(dealCards) DrawCards();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 DealCards();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
 ShuffleCards();
}
//---------------------------------------------------------------------------
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
czeri
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: Sortowanie TImageList

Nowy postprzez czeri » piątek, 28 stycznia 2011, 03:20

Wielkie dzięki za aplikację i cały kod. Chociaż miałem problemy z odpaleniem aplikacji pod Builderem 6(niewiem czemu połowa rzeczy w tej wersji niedziała), więc ściągnąłem wersje buildera 2010 trial i tam wszystko działa(chociaż trzeba sie przezwyczaić do obsługi). Teraz zabieram się za oprogramowanie przeciągania kart :)
Avatar użytkownika
czeri
Bladawiec
Bladawiec
 
Posty: 19
Dołączył(a): środa, 26 stycznia 2011, 15:32
Podziękował : 4
Otrzymał podziękowań: 0
System operacyjny: Mac OS X 10.5.8
Kompilator: C++ Builder 6
Gadu Gadu: 0
    MacintoshSafari

Re: Sortowanie TImageList

Nowy postprzez Cyfrowy Baron » piątek, 28 stycznia 2011, 09:31

Chociaż miałem problemy z odpaleniem aplikacji pod Builderem 6(niewiem czemu połowa rzeczy w tej wersji niedziała)


Miałeś problem z uruchomieniem aplikacji czy z uruchomieniem projektu w środowisku C++Builder 6?
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
Podziękował : 12
Otrzymał podziękowań: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Następna strona

Powrót do Ogólne problemy z programowaniem

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 14 gości

cron