|
|
Oldal: 1 / 1
|
[ 31 hozzászólás ] |
|
Szerző |
Üzenet |
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Egy újabb kérdés:
Készítettem egy dialógusalapú alkalmazást (az egyszerûség végett), hogy egy erõforrástároló DLL- be utólag beírjak egy sztringet.
Azonban a
m_DLLHandle=BeginUpdateResource(m_DLLName,FALSE);
részt nem képes végrehajtani (mármint NULL- lal tér vissza). A hibaüzenet visszafejtve: "Ez a függvény csak Win32 módban hívható." Na ettõl nem lettem okosabb.
Megvilágosítaná valaki agyam homályát?
Köszi:
vakundok
|
hétf. szept. 15, 2003 21:52 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Helló Mindenki!
Mostani láma kérdésem:
Hogyan érhetem el a nézetosztályból a CMainFrame-et?
|
csüt. szept. 11, 2003 15:32 |
|
|
harcu
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 20
|
Ott a 3 pont. Valóban a FILE-ról beszéltem
|
pén. máj. 23, 2003 12:35 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Õõõ, most nagyon bután nézek. Tudom, hogy nálam ez a
normális. Ne haragudj, de biztos, hogy ugyanarról a CFile-
ról beszélünk? Én a CFile osztályra gondoltam, amit te
írtál az meg nekem FILE streamesnek tûnik.
|
kedd máj. 20, 2003 10:06 |
|
|
harcu
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 20
|
Őszinte leszek, CFile-t csakis "w+"-ként szoktam megnyitni,
oda a cuccot pedig fprintf("%s
",
A_STRING_AMIT_KI_AKARSZ_IRATNI) formában írom ki. Fel sem
merült bennem, hogy másképp tegyem, eddig mindig működött
és kész.
Ha valakit érdekel még a registry írása és olvasása,
törlése, az jelezze, és akkor beírom.
Ja, mindez VC++ 6.0 alatt értem, bár most éppen Embedded
Visual C++ 3.0-ban fejlesztek (IPaq-re), ami egy nagy rakás
****.
|
kedd máj. 20, 2003 9:35 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Sziasztok!
Jon: Nos, a Win98 frissítések között egy kukk sincs a GDI+-ról.
Amúgy:
Egy textfájlba szeretném kiírni egy CListBox vezérlõ tartalmát. Fájlkezelésre egy CFile-t használok. Az elsõ meglepetés akkor ért, mikor a help kiírta, hogy a Text módú megnyitás csak származtatott osztályoknál van. A következõ akkor, mikor text módú kiírató utasítást nem találtam.
Most úgy mûködik a program, hogy megnyitja a fájlt bináris módban, majd a CListBox-ból kiszedett sztringek végére odabiggyeszti a textmódú sorlezárás karaktereit és úgy írja ki a fájlba. Megcsinálja szépen (tehát az eredmény jó), csak az a kérdésem, hogy van-é esetleg kultúráltabb módja ennek?
Köszi:
vakundok
|
vas. máj. 18, 2003 9:49 |
|
|
jon
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
A GDI+ -t csak a Windows XP tartalmazza, de utolag lehet bermilyen gepre telepiteni, gondolom. Kivetel persze a Win95, arra talan nem megy fel...
"A GDI+ elérhető nem MSDN tagoknak?" Szerintem ennek a kerdesnek nem sok ertelme van, de a valasz igen.
|
kedd ápr. 01, 2003 17:32 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Hoppáré!
Most látom csak, hogy GDI+ XP- vel indul. Akkor asszem eme megoldás kiesett. 8-(
Bred_rg42: Kösz, majd elmerülök benne jól, de még csak tegnap vetõdtem el a codeproject oldalára.
Üdv:
vakundok
|
pén. márc. 28, 2003 12:56 |
|
|
Bred_RG42
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Hello André, A> A maradék kérdés a fájltársítások kezelése, illetve, hogy Excel táblázat létrehozásához programból van e konkrét példa valahol. Vagy a http://www.codeproject.com -on vagy a http://www.codeguru.com-on lattam (sot le is toltottem ) ilyet a database reszben -- Best regards, bred_rg42 mailto:bred@rg42.hu
|
pén. márc. 28, 2003 11:48 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Köszi!
A GDI+ elérhetõ nem MSDN tagoknak?
/*A súgónak beírtam, hogy GetDriveType, és közölte, hogy nincs ilyen témakör. Beírtam egy forrásba, és ott meg alávéste, hogy milyen paramétereket vár. Utálom a súgót.*/
A registry használatára találtam példát, úgyhogy a kérdést visszavonom.
A maradék kérdés a fájltársítások kezelése, illetve, hogy Excel táblázat létrehozásához programból van e konkrét példa valahol.
Üdv:
vakundok
|
pén. márc. 28, 2003 11:24 |
|
|
jon
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Helyesbitek:
char drive[] = "c:\";
|
csüt. márc. 27, 2003 11:24 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Sziasztok!
Mostani kérdéseim:
1. Hogyan tudok a Registry- bõl adatokat kiolvasni? Tudom egy program nevét, és annak a helyét szeretném megtudni.
2. Hogyan lehet eltávolítani valamit a Registry- bõl?
3. Azt írja a könyv, hogy hogyan lehet egy fájltípust hozzárendelni a programomhoz, hogyan lehet ezt kiolvasni? Azért, ha már társítva van valamihez, akkor ne piszkálja, illetve, ha eltávolítják a programot, akkor visszaállítsa, illetve törölje a társítást.
4. Hogyan lehet a CD meghajtók tartalmát lekérdezni? Van olyan függvény, ami az elsõ CD meghajtó jelét adja meg?
Köszi a válaszokat!
Üdv:
vakundok
|
csüt. márc. 27, 2003 10:10 |
|
|
_ZsoltK
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
bmp: passz:-) a kepek digitalis feldolgozasa kulon tema. Ha komolyan gondolod, akkor meg nagyon sulyos. De mintha lenne erre is valami a WinAPI-ban...
Program <-> Excel. Felejtsd el az XLS formatumot. Vannak arra megfelelelo COM, ActiveX marhasagok. Tessek azt hasznalni! jobban jarsz:-)
|
vas. feb. 16, 2003 23:59 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Sziasztok!
Ismét itt. Gondolkodom (nem röhögni ) egy bmp konvertáló programon. (Sokszínûbõl 256 színût.)
Van olyan függvény, ami számszerûsítí két szín különbözõségét? Ha nincs, akkor segítenétek, hogy álljak neki ezt meghatározni? Maradjak RGB-ben és a színek különbözõségi mértékét adjam össze vagy próbáljam átalakítani HSB- re? Ha HSB, akkor ott milyen arányokat használjak a színárnyalat, színtelítettség, világosság eltéréseire, egyformán fontosak, vagy mondjuk a világosság pl. kétszeres súllyal szerepeljen? A színek különbözõségének számszerûsítése szerintem elkerülhetetlen, ha csak a gyakoriságot vizsgálnám, akkor elõfordulhatna, hogy néhány nagyon hasonló (akár egyformának látott) de gyakori szín miatt nem marad hely a palettáben egy ritkább, de szembetûnõbb színnek.
Ötletek?
Üdv:
vakundok
|
szer. feb. 12, 2003 21:12 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Szeretnék egy programból Excelbe importálni. Irányba állítanátok, hogy mit nézzek át? Próbáljak utánanézni az xls fájlok formátumának, vagy böngésszem a súgót? (Még nem tartok az OLE, illetve ActiveX fejezeteknél, de ahogy belenéztem, konkrétan ezzel nem is foglalkozik a könyv.)
Köszi:
vakundok
|
kedd jan. 28, 2003 18:35 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Így belegondolva, ezzel hogy mutatókat használ, és nem csak arra, hogy gyorsan átvegye az értéket egy saját adattagba, nem vágták ki az objektum védettségét az ablakon? Jó, hogy lehet származtatni, de egy dolog a "lehet" és másik a "jobban teszed, ha azonnal".
Üdv:
vakundok
|
kedd jan. 28, 2003 16:52 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
jsaak:
Köszi, imádlak! 8-D
A dialógusosztály kapott egy CFont m_ListaFont védett adattagot, az OnInitDialog pedig
m_ListaFont.CreatePointFont(90,"Fixedsys");
m_ListListBox.SetFont(&m_ListaFont);
-és mükszik.
Üdv:
vakundok
|
hétf. jan. 27, 2003 15:40 |
|
|
jsaak
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Egy kis bibi van a programoddal: A Font nevű változód lokális (csak az OnInitDialog() fv-en belül él)
a megoldás:
Dialog deklarációjába:
CFont *m_font;
OnInitDialog()-ba
m_font = new CFont;
m_font->CreateFont(-12,0,0,0,400,FALSE,FALSE,FALSE,0,OUT_DEFAULT_PRECIS,
CLIP_DEFAULT_PRECIS,DEFAULT_QUALITY,FIXED_PITCH | FF_MODERN ,
"Courier New");
//Lehet hogy működik a CreatePointFont(..) is
m_ListListBox.SetFont(m_font);
Dialog destruktorába:
delete m_font;
|
hétf. jan. 27, 2003 1:39 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
stardus:
Köszönöm.
Verzió 2:
A ListBox egy WM_NCCREATE-tel indul (OnNcCreate kezelõvel). Csakhogy a CREATESTRUCT struktúrának nem találtam a fontra utaló adattagját. Illetve röhögõgörcsöt kaptam, ugyanis van egy khm, nem részletezett tagja:
"lpCreateParams
Points to data to be used to create the window."- de hogy ez az adat milyen, mekkora, micsoda, arról egy árva kanyi szó sincs (teljes egyetértésben az on-line súgóval).
Verzió 1:
Uff, ez nagyon ijesztõ, még nem néztem utána. Nem akarom elhinni, hogy erre nincs valami egyszerû megoldás, ha már tervezéskor nem lehet beállítani ...
Üdv:
vakundok
|
szomb. jan. 25, 2003 23:05 |
|
|
stardus
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Vakundok!
Ha a te helyedben volnek, eloszor csinalnek egy class CMyListBox : public CListBox ... osztalyt.
Utana verzio1:
a classwizardban latnam, hogy ennek az osztalynak vannak olyan "=WM_CTL..." uzenetei (= jellel kezdodnek). Na ezen = uzenetek kozul az egyiket lekezelnem. Hogy melyiket, annak az MSDN-ben neznek utana (search: message reflection CEdit) - az ottani pelda egy editbox-ot barmol felul.
verzio 2:
a precreatewindow-ot irnam at ugy hogy eloszor letrehozom a fontot (es eltarolom egy osztaly adattagban), atallitom a cs strukturat font adattagjat (ha jol emlekszem ilyennek lennie kell), meghivom az CListBox::precreatewindow-t. Es hatha jo lesz.
star
ps: En tobb, mint ket eve foglalkoztam ilyennel, es jelen pillanatban nincs keznel vis studio. Ily lehet, hogy nem mindenre emlekszem jol, de iranynak jo.
|
pén. jan. 24, 2003 10:30 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Helló!
Nos, ismét itt. Egy dialógusablakban lévõ ListBox vezérlõ betûtípusát szeretném beállítani a dialógusablak többi részétõl eltérõre (Fixedsys betûtípusra, kilences nagyságra). A hozzárendelt változó neve m_ListListBox.
Az OnInitDialog() függvénybe behelyeztem a következõt:
CFont Font;
Font.CreatePointFont(9,"Fixedsys");
m_ListListBox.SetFont(&Font);
Mi a baj ezzel a megközelítéssel? Illetve tudna valaki valami ötletet, hogy tervezéskor lehet-é egyáltalán a párbeszédablakon a vezérlõk betûtípusát külön állítani?
Köszi:
vakundok
|
kedd jan. 21, 2003 23:46 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Helló!
CStyle::OnSetActive()
{
m_Pitch=((CPitch *)((CPropertySheet *)GetParent())->GetPage(2))->GetPitch();
if (m_Pitch ...
}
Jelenleg így van és mûködik. Valahogy kiesett a tudatomból, hogy a Style és a Pitch fül közt még van egy Justify is. Még jó, hogy én csináltam.
Most egy kicsit csöndben leszek, egyrészt belevágok a Visual C++ második kötetébe, másrészt csinálok egy hexeditort, harmadrészt igyekszem megérteni a dll-rõl szóló súgórészt (különös tekintettel az erõforrástároló dllre), mert a könyvben egy szó sem esik róla, nekem meg tök ismeretlen a téma.
Köszi az eddigieket!
Üdv: vakundok
|
hétf. jan. 20, 2003 10:28 |
|
|
_ZsoltK
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Na jo:-) nem nezhetem, hanem nezem:-)
|
vas. jan. 19, 2003 16:56 |
|
|
_ZsoltK
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Na most akkor nekem ez igy keves:-) Tudom, hogy nem vagyok egy guru, de azert tobbet kene latni abbol a prg-bol. Ha elkuldod a forrast, akkor megnezhetem.
|
vas. jan. 19, 2003 16:55 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Szia!
Fordulni fordult, csak épp nem csinált semmit. Mint rámutattál, ez a mutatódobálás és konverzió elég brutális és ellenõrzésmentes.
A Pitch nem a második lap volt, hanem a harmadik, szóval GetPage(2) és mûködik. Még az a zárójel sem kell, amit az átláthatóság kedvéért tettem bele.
Köszi: vakundok
|
szomb. jan. 18, 2003 10:29 |
|
|
_ZsoltK
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Jokat kerdezel:-)
Mashogy szvsz nem igazan lehet. Mivel az objektumok nem lathatjak egymast...
Mondjuk csinalhatsz olyat, hogy minden CPropertyPage delgalja magat a tobbi PropertyPage-re. De ez megint csak a fenti megoldas egy varizacioja, es raadasul nagyot is lehet vele hasalni.
En vmi olyat csinalnek, hogy a CPropertySheet-ben tarolnam a valtozok ertekeit /*parent.GetValtozo(); parent.SetValtozo();*/.
Gyakorlatilag mint a fenti, de legalabb nem olyan ronda:-)
Amugy miert nem jo a fenti? Nem fordul? Nem azt csinalja?
|
pén. jan. 17, 2003 23:09 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Helló!
Elkészítettem a Visual C++ Mesteri Szinten c. könyv többfüles párbeszédablak- példáját. Szeretném úgy bõvíteni, hogy ne lehessen lehetetlen konfigurációt beállítani.
Ehhez az kellene, hogy a lapok lássák egymást viszont nem találtam rá iránymutatást.
A példában a Style lap egyik gombjának (CButton BoldGomb) az engedélyeztetetsége a Pitch lap publikus m_Pitch változójától kellene, hogy függjön. (Bár publikus, de azért adtam hozzá egy GetPitch() függvényt.)
Arra gondoltam, hogy a CStyle::OnSetActive() majd kiolvassa, de nem éri el. Próbáltam a PropertySheet-en keresztül, de ez egyrészt ocsmány, másrészt nem mûködik:
CStyle::OnSetActive()
{
m_Pitch=((CPitch *)(((CPropertySheet *)GetParent())->GetPage(1)))->GetPitch();
if (m_Pitch ...
}
Köszönettel várom az ötleteket.
Üdv:
vakundok
|
pén. jan. 17, 2003 18:42 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Szia!
Kösz. Bár esküdni mertem volna, hogy már próbáltam, lévén,
hogy ez a logikus, de ezek szerint mégse. 8-O Magamat is
meglepem önnön bénaságommal. Úgyhogy visszahoztam a
gombokhoz rendelt control változókat. (Merthogy voltak )
Üdv: vakundok
|
pén. jan. 17, 2003 9:00 |
|
|
_ZsoltK
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 0
|
Amit csinalsz, az szerintem egy nagy lamersag. Es sokan csinaljak... Ha fogod a dialogusablakot a GUI szerkeszton, onnan atvaltasz a class-wizarda-ra, akkor ott van olyan tab amivel hozzaadhatsz member valtozokat a dialogushoz, barmi mashoz, tartozo osztalyhoz. Ha jol csinalod, akkor a fenti tipuskonverzios, controllekeros, hibanemellenorzos, k***a buveszkedes a kovetkezore egyszerusodik le:
m_elsoGomb.SetWindowText("Gomb1");
Ha a fenti modon csinalod, akkor a Windows alapertelmezett modjan osszerendeli a controlt az osztallyal, hozzakapcsol mindenfele fityfenet, amit azert macera lekezelni.
Ha nem ertetted, akkor a cimem vege: freemail.hu
Amugy minden jot!:-)
|
csüt. jan. 16, 2003 22:18 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Nos, kísérleteztem a SetWindowText-tel is és ez végre eredményre vezetett. Tehát:
((CBUTTON *)GetDlgItem(IDC_BUTTON1))->SetWindowText(Gomb1);
A típuskonverzió kell. Azért köszi annak, aki elgondolkodott rajta!
Üdv: vakundok
|
szer. jan. 15, 2003 22:29 |
|
|
+vakundok+
ezüst tag
Csatlakozott: szer. márc. 24, 2004 13:43 Hozzászólások: 84
|
Üdvözlet!
Egy dialógusablak gombjának feliratát szeretném megváltoztatni futásidõben. Úgyhogy adtam hozzá egy ilyet:
void Gomb1Szoveg(CString Gomb1)
{
SetDlgItemText(IDC_BUTTON1,Gomb1);
}
Lefordul, de mikor használnám, behal. A hibakeresés
void CWnd::SetDlgItemText(int nID, LPCTSTR lpszString)
{
itt áll meg: ASSERT(::IsWindow(m_hWnd));
if (m_pCtrlCont == NULL)
::SetDlgItemText(m_hWnd, nID, lpszString);
else
m_pCtrlCont->SetDlgItemText(nID, lpszString);
}
, és közli, hogy no matching symbolic information found a betöltött dllekben. Mit csesztem el?
Köszi:
vakundok
|
csüt. jan. 09, 2003 11:15 |
|
|
|
Oldal: 1 / 1
|
[ 31 hozzászólás ] |
|
Ki van itt |
Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 6 vendég |
|
Nem nyithatsz témákat ebben a fórumban. Nem válaszolhatsz egy témára ebben a fórumban. Nem szerkesztheted a hozzászólásaidat ebben a fórumban. Nem törölheted a hozzászólásaidat ebben a fórumban.
|
|
|