Anonymní profil sfx – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil sfx – Programujte.comAnonymní profil sfx – Programujte.com

 

Příspěvky odeslané z IP adresy 85.207.166.–

.NET › Tcpklient
10. 9. 2010   #133492
.NET › Math.Pow Chyba
10. 9. 2010   #133487

To KIIV : Stačí :)

.NET › Math.Pow Chyba
10. 9. 2010   #133484

Math.Abs vrací absolutní hodnotu argumentu, tj. neznaménkové číslo.

.NET › Tcpklient
10. 9. 2010   #133482

Jednak ... řetězec je taky pole bajtů (nebo dvojbajtů) ... druhak ... pole bajtů k odeslání lze vytvořit i z číselných souřadnic např. takto:

// souradnice

UInt32 x = 10;
UInt32 y = 15;
// data k odeslani
byte [] data = new byte[8];

Buffer.BlockCopy(BitConverter.GetBytes(x), 0, data, 0, 4);
Buffer.BlockCopy(BitConverter.GetBytes(y), 0, data, 4, 4);


A spojení si samozřejmě nemusíš vytvářet pokaždé. Dokonce to jde i proti principu TCP spojení, kde by si měl držet spojení až do chvíli, kdy upadne nebo ho už nepotřebuješ. Takže v nějaké inicializaci se jednou připoj, proměnné udělej jako členské a máš to.

C / C++ › Programování grafiky - rada
10. 9. 2010   #133479

Co se týká primitivní grafiky, tak ta je v C++ rychlá. Kreslení čar, obdélníků, ale i textů ... všude se budeš pohybovat na hranici měřitelnosti časové náročnosti. Pokud ovšem budeš chtít v tom svém programu zoomovat, nebo-li by si se jal Stretchovat, tak to by si se mohl do problémů. Všechno záleží (jako vždy) na to, co má být cílem, jaký je rozsah. A jak jsem psal výše, nad dobrou datovou reprezentací se grafika dělá velice snadno (ať si vybereš jakýkoliv způsob).

.NET › Tcpklient
10. 9. 2010   #133478

Jednak je zvláštní posílat celočíselné souřadnice jako řetězec, ale budiž. A když už to máš jako řetězce, tak je normálně spoj, mezi ně si dej třeba čárku :) a pošli to jako jeden řetězec, ne?

.NET › Fce Vypisu z XML souboru
9. 9. 2010   #133445

No ... řekněme, že tě chápu :) a kdybych napsal příspěvek ve tvém stylu, tak bude obsahovat: mě to funguje.

Naštěstí je každý člověk unikát, tak i příspěvky se budou lišit :) Tady je příklad (funkční) funkce :) pro nastavení textu TextBoxu, který je předán jako parametr:

private void SetTextBoxText(Control textBox)

{
textBox.Text = "Nejaky text";
}

// a nekde v kodu volam, kde textBox1 instance TextBoxu na formulari
SetTextBoxText(textBox1);

.NET › Fce Vypisu z XML souboru
8. 9. 2010   #133428

Tak možností, jak tohle řešit, je hodně ... jen mít potřebné informace :) ... jedna obecná možnost je taková, že návratovým typem té funkce bude pole řetězců, ve kterém vrátíš slozka1 až slozka4.

.NET › Fce Vypisu z XML souboru
8. 9. 2010   #133424

Můžeš zkusit i ladění :). A co třeba takové výpisy do konzole? Je vůbec něco v těch řetězcích vypis_a a vypis_b? Nebo se dej kompletní projekt i s testovacími daty ... rozhodně to bude lepší než vzdechy :smile1:

.NET › Propojeni vice Formu
8. 9. 2010   #133421

Tak místo this předávej obsah toho TB/RTB, ne?

.NET › pole dvojrozmerne
8. 9. 2010   #133418

Budeš mít ArrayList jehož prvky budou zase ArrayListy a jeho prvky budou třeba inty, stringy ... podle toho, co potřebuješ. Malá ukázka:

ArrayList list = new ArrayList();


for (int i = 0; i < 10; i++)
{
ArrayList item = new ArrayList();

for (int j = 0; j < 10; j++)
{
item.Add(i * 10 + j);
}

list.Add(item);
}

foreach (ArrayList item in list)
{
foreach (int i in item)
{
Console.Write(i + ", ");
}
}

.NET › Propojeni vice Formu
8. 9. 2010   #133417

Dostaneš se pouze k public atributům/metodám ...

C / C++ › Programování grafiky - rada
8. 9. 2010   #133416

Pokud chceš vytvořit aplikaci, kde budeš pohybovat grafickými objekty, tak základ je vhodná datová reprezentace (nejlépe objektová). Následné vykreslení je již třešničkou na dortu a můžeš ho udělat klidně i znaky na konzoly :). Jinak na tu tvojí grafiku je DirectX a OpenGL trochu kanón na vrabce, na to ti stačí i primitivní GDI grafika.

.NET › Propojeni vice Formu
8. 9. 2010   #133414

Možná to má být takto:

Form1 form1; 

public Form2(Form1 f)
{
InitializeComponent();
form1 = f;
}

Java › Zaokrouhlovani desetinneho c…
7. 9. 2010   #133390

Vždycky ne ... když máš číslo 1.23456 a chceš ho zaokrouhlit na 3 místa nahoru (pokud ho tedy chceš zaokrouhlit nahoru :)), tak přičteš 0.0005 a dostaneš 1.23506, ořízneš přebytečná desetinná místa a máš to.

Když by si měl číslo 1.2344999999 a menší (do 1.2340), tak přičtením 0.0005 dostaneš 1.2349999999 a když ořízneš přebytečná desetinná místa, tak dostaneš 1.234, nebo-li to co si chtěl (ten dlouhý zástup 9 na konci ber s rezervou viz přesnost desetinných čísel).

Java › Zaokrouhlovani desetinneho c…
7. 9. 2010   #133388

No ... jestli chceš z 12.456789 dostat 12.457 a ne jenom 12.456, tak tam musí být něco víc než jenom oříznutí desetinných míst. A to něco je právě to + 0.0005 :)

.NET › Fce Vypisu z XML souboru
7. 9. 2010   #133383

A co je vůbec ten dir_pack_files? Předáváš do té funkce jeho property Text, ale uvnitř té funkce měníš obsah lokálního řetězce. Lepší bude předat dir_pack_files apod. a místo slozka1 = vypis_a; dát neco.Text = vypis_a; Třeba to bude fungovat :)

Java › Zaokrouhlovani desetinneho c…
7. 9. 2010   #133382

Nejspíš někde něco existovat bude (možná v Math nebo přes DecimalFormat), ale zaokrouhlení lze udělat jednoduše i "ručně". V tvém případě je to nějak takto:

double dValue = 12.456789;

// oriznuti desetinne casti
int nTemp = (int)((dValue + 0.0005) * 1000.0);
// zpetny prevod na double
double dFinal = ((double)nTemp)/1000.0;

.NET › Fce Vypisu z XML souboru
6. 9. 2010   #133364

Ty máš volání funkce někde na úrovni definování funkcí a proměnných té třídy? Zavolej to třeba z mainu, nějak takto:



static void Main(string[] args)
{
VypisXML(1, dir_pack_files.Text, slozka_dir.Text);
VypisXML(2, dir_unpack_files.Text, slozka_unpack,Dir.Text);
}

.NET › C# ako zmenit BalloonTipIcon ?
6. 9. 2010   #133357

Ten odkaz, co si dal, to ale vypadá na vlastní kompletní implementaci, tj. žádná jednoduchá náhrada ikony za ikonu, ale celá nová komponenta resp. sada komponent. Obávám se, že tak jednoduše, jak si to představuješ, to nepůjde, ale hledej dál, třeba se pletu :)

EDIT: tak se asi pletu :), buď přes OwnerDraw ToolTipu http://msdn.microsoft.com/en-us/library/system.windows.forms.tooltip.ownerdraw.aspx nebo můžeš použít klasické WInAPI, kde lze zprávou TTM_SETTITLE poslat i HICON (http://msdn.microsoft.com/en-us/library/bb760414(VS.85).aspx).

.NET › Fce Vypisu z XML souboru
6. 9. 2010   #133356

Vidím tam minimálně 2 drobnosti:

public void VypisXML

XPathNavigator navigator = xml.CreateNavigator();

pokud tedy není navigator nějaká globální

.NET › komunikace mezi pc
6. 9. 2010   #133355

Když máš komunikaci v rámci jednoho počítače, tak taky používáš IP adresu. Buď přímo (127.0.0.1) nebo pojmenovanou (localhost). Stačí tedy místo lokální IP adresy zadat IP adresu vzdáleného počítače. Jestli trváš na příkladu,t ak dej vědět a něco dáme dohromady ;)

C / C++ › Problém s vykreslováním do o…
6. 9. 2010   #133354

Když vytvoříš knihovnu, kterou použiješ v aplikaci, tak potřebuješ hlavičkový soubor (.h), aby aplikace věděla, jaké má funkce parametry, návratovou hodnotu atd. Pro překlad potřebuješ ještě soubor .lib, který vznikne při tvorbě knihovny dll. V také .lib je napsáno, kde a jak se ta funkce najde - je tam prostě napsáno, ve které dll a na které adrese ji najde. No a pro souštění potřebuješ tu knihovnu.

Na konci té stránky, co se postnul zdenda, je napsáno, že pro Rectangle potřebuješ takový a takový hlavičkový soubor a takovou a takovou libku. BeginPaint (http://msdn.microsoft.com/en-us/library/dd183362(VS.85).aspx) je v jiné knihovně, a proto ti to funguje. Stačí prostě přidat někam do nastavení projektu (podle toho v čem to děláš) Gdi32.lib.

A s tím heslem ... jestli myslíš tady na fóru, tak po přehlášení stačí kliknout na tvůj nick vpravo nahoře a přejdeš na Nastavení účtu, kde by se mělo dát heslo změnit. Když to nepůjde, tak se obrať na vrchního velitele (Curo).

Java › Zacatek Java
6. 9. 2010   #133353

Mě ty 2 "struktury" přijdou velice podobné. Škoda, že nepíšeš proč ti nešli kódy z tutoriálu - chybovou hlášku nebo něco. Vstupní bod spuštění aplikace je statická funkce main. To je asi jediný rozdíl, že v jednom kódu je v extra třídě a v druhém kódu je součástí třídy, ale jinak .... hoď sem ten příklad, co ti nešel i s chybovou hláškou a uvidíme :)

Java › Přistup z vedlejsi třídy.
3. 9. 2010   #133286

Hmmmm ... lákavá nabídka :smile1: . Řekl bych, že to stačí dávat sem na fórum a on se vždycky najde nějakej dobrák, co ti na tom nenechá nit suchou. Alespoň budeš mít veřejnou kontrolu, že tě netahá za nos :smile1:. Pokud sis to představoval jinak, tak můžeš nastínit svoji představu a uvidíme ...

PHP › Poradie z DB
2. 9. 2010   #133241

Jestli jsem to dobře pochopil, tak by mělo stačit vytvoření index proměnné, kterou by si při procházení výsledků v PHP inkrementoval. Nebo si to pořadí chtěl rovnou do výsledků SQL dotazu?

Java › Přistup z vedlejsi třídy.
2. 9. 2010   #133240

To ani nemůže jít, protože proměnná MainFrame není v ControlPanel definována. Přímo by to šlo pouze v případě, že by si přistupoval ke statickým metodách a/nebo proměnným. Jinak potřebuješ předat referenci na instanci.

Takže v MainFrame

controlPanel1 = new MainPackage.ControlPanel(this);


a v ControlPanel


// clenska promemenna pro dalsi vyuziti
MainFrame frame;

public ControlPanel(MainFrame frame) {
initComponents();
this.setSize(300, 300);
this.frame = frame; // kdyby si to chtel jeste nekdy v ControlPanel pouzit
frame.jLabel1.setText("test");
}


.NET › komunikace mezi pc
1. 9. 2010   #133182

To velurex : Hmmm ... koukám, že low-level už se dostal dost vysoko :smile1: .

C / C++ › Problém s vykreslováním do o…
1. 9. 2010   #133181

Chybu hlásí linker, protože si musíš si přilinkovat libku s Rectangle, a která to je si nejdeš v dokumentaci :).

Visual Basic › Linky v Textboxu
30. 8. 2010   #133129

A co by jako mělo být výsledkem? Pokud to ovládací prvek neumí, tak si jeho vlastnosti můžeš upravovat ...

Visual Basic › Vložení UserControlu do text…
30. 8. 2010   #133128

Do RTBoxu by mohlo jít vkládat ActiveX komponenty.

.NET › Nastavenie kurzora v okne ap…
30. 8. 2010   #133127

Přepočítáš si souřadnice přes funkce PointToClient a PointToScreen (nebo Win32 funkce ClientToScreen, ScreenToClient).

Pokud vím, tak pohyb myši resp. kurzoru zakázat nemůžeš, ale můžeš ho odchytit (a ignorovat) nebo vymezit oblast pohybu System.Windows.Forms.Cursor.Clip (ve Win32 ClipCursor).

Python › 10.lekce (chybí kus textu?!)
20. 8. 2010   #132858



nazev='MujPrvniSoubor.txt'
soubor=file(nazev,'w')
vstup=raw_input('Zadej text: ')
soubor.write(vstup)
soubor.close()

C / C++ › nelze spustit konzolový exe
20. 8. 2010   #132854

Překlad musíš udělat v Release konfiguraci. A pokud ani potom nepůjde aplikaci spustit, tak se můžeš podívat např. přes http://www.dependencywalker.com/, jaké má aplikace závislosti a jaké knihovny potřebuje.

C / C++ › Čtení DOC v C++
17. 8. 2010   #132747

Pro XML nemusíš skoro nic psát. Jenom si vybereš parser, který použiješ, aby si načetl stromovou strukturu XML dokumentu a pak už "jenom" zpracováváš. Na webu jsou toho mraky, stačí si jen vybrat, co ti bude vyhovovat.

Java › Proměné
16. 8. 2010   #132720

No vidíš ... tomu se říká ladění. Pokud nemůžeš použít krokování, tak můžeš použít MessageBoxy nebo nějaké OutputDebugStringy .... prostě cokoliv, čím zjistíš, do jaké části programu ses dostal a proč. Prošpikuj to breakpointy nebo výpisy a třeba na to za chvilku přijdeš sám.

Java › Proměné
16. 8. 2010   #132716

A co to dělá/nedělá? Lze zadat username/pass? Předa jí se? Připojí se to? Vykoná to SQL dotaz? Vrátí to nějaké výsledky? Mělo by to nějaké vrátit?

A malá připomínka ... na výpis zdrojáku jsou tu tagy.

Photoshop › Photoshop - píše mi to pořád…
16. 8. 2010   #132714
Java › Proměné
16. 8. 2010   #132713

Myslíš něco jako okno.dispose(); ?

C / C++ › Čtení DOC v C++
16. 8. 2010   #132707
Java › Proměné
16. 8. 2010   #132706

Co využít statické proměnné?

Java › GridBagLayout
16. 8. 2010   #132697
.NET › C# - barva pixelu pod ukazat…
16. 8. 2010   #132696

Malá poznámečka k tomu příkladu. Samozřejmě nevím k čemu to potřebuješ a jak často budeš tu barvu pod kurzorem zjišťovat, ale je docela zbytečně dělat kopii celé obrazovky, když z toho nakonec použiješ je jeden pixel resp. jeho barvu.

C / C++ › Čtení DOC v C++
16. 8. 2010   #132695

Klasický DOC není zip, ale binární soubor. Pokud myslíš OpenDocument, OOXML a tyhle vymoženosti moderní doby :), tak to jsou zipy, které když rozbalíš, tak zjistíš, že základem je XML. No a když jejich názvy zadáš do googlu, tak rozhodně něco najdeš. Stejně je DocBook lepší ;)

C / C++ › Ikonka u hodin + okno na ploše
16. 8. 2010   #132694

Nejdřív si rozmysli, co vlastně chceš. Jestli chceš gadget http://msdn.microsoft.com/en-us/library/aa965850.aspx nebo jestli chceš "normální" aplikaci s ikonkou v trayi.

Pokud se týká minimalizace do systémové oblasti u hodin, tak to je vlastně takový trik. Odchytíš WM_SYSCOMMAND resp. SC_MINIMIZE a aplikaci skryješ (SW_HIDE). No a vytvoříš si ikonu v trayi (Shell_NotifyIcon s parametrem NIM_ADD), kterou při obnovení aplikace (SW_RESTORE) zase zrušíš (Shell_NotifyIcon s parametrem NIM_DELETE).

Python › 12. Lekce prosim o pomoc
11. 8. 2010   #132473

Asi bude potřeba uzavřít řetězec do uvozovek:

x=Label(podokno,text="vypis")

PHP › Výpis složek a souborů v PHP
11. 8. 2010   #132471

To Maro : Řekl bych, že máš stále problém s pochopením principu. Ty nemusíš být "fyzicky" v tom adresáři, aby si mohl vypsat jeho obsah, nebo-li nebudeš měnit current directory. Nevím, jestli děláš ve woknech nebo tuňákovi, ale řekněme, že ve woknech :). Řekněme, že by si chtěl něco takového udělat s pomocí příkazu dir. Příkaz dir dokáže vypsat obsah adresáře a "finta" je v tom, že bez parametrů vypisuje obsah aktuálního adresáře, ale s parametrem vypisuje obsah zadaného adresáře.

Měl by si skript, který by si prvně zavolal bez parametrů (např. výpis disku C:). On by ti vypsal soubory a také adresáře. Byl by tam třeba i adresář MojeFotky. Takový adresář by byl "klikací odkaz", který by tomu tvému skriptu předával právě ten parametr, který by mu oznamoval, kde se má provést další výpis. A kupodivu by ten parametr název toho adresáře resp. úplná cesta k němu.

Takže vypisuješ obsah C:, našel si adresář MojeFotky, takže do do parametru toho odkazu dáš "součet" cesty aktuálně vypisovaného adresáře a jména nalezeného adresář, nebo-li C:\MojeFotky. Takový parametr by se po kliknutí na ten odkaz předal tomu skriptu a byl by to tvůj aktuálně vypisovaný adresář, takže v programu by si udělal dir $jméno_adresáře. Samozřejmě by to našlo zase adresáře, třeba adresář 2010. Takže by si udělal to samé - sečetl by si řetězce -> $jméno_adresáře + 2010 = C:\MojeFotky\2010 - to by byl parametr toho nově nalezeného adresáře.

Nemění se "fyzický" aktuální adresář - getcwd mi bude vracet pořád to samé. Mění se pouze aktuálně vypisovaný adresář, který si stále předávám jako parametr. To, co dostaneš na vstupu toho skriptu jako adresář, kde se má provést výpis, použiješ dále na tvorbu cesty parametrů další podadresářů.

PHP › Výpis složek a souborů v PHP
10. 8. 2010   #132426

Předáváš skriptu parametry a je jedno jak. Na začátku mu nepředáváš nic -> kořenový adresář. Uděláš jeho výpis a jména adresářů budou odkazy, které budou mít nastavený ten předávaný parametr. Nebo může předávat těch parametrů víc (aktuální adresář + nový adresář) apod. Těch možností je určitě víc. Rozhodující je, aby si při procházení stále přidával a nezapomínal na to, že potřebuješ "úplnou cestu".

.NET › 8 Královen - LOGICKÝ problém
10. 8. 2010   #132425

To KIIV : jjj souhlas, jenom jsem chtěl říct, že pro Petrrolla jakožto pro středoškoláka (pokud se nepletu) to sousto vypadá o dost větší :), ale je to v jeho silách, jenom to bude bolet :)

PHP › Výpis složek a souborů v PHP
10. 8. 2010   #132423

Stejně jako se to řeší jinde, tj. budeš mít v tvém případě skript, který bude vypisovat adresáře a soubory v aktuálním adresáři. Po kliknutí na nějaký z těch vypsaných adresářů se tomu skriptu předá nový aktuální adresář, který bude složen z původního + jméno kliknutého adresáře :)

.NET › 8 Královen - LOGICKÝ problém
10. 8. 2010   #132416

Jen tak mimochodem, četl jsem tebou vyvolanou diskuzi u konkurence :) (včera) a měl bych k tomu poznámku: 8 královen je na oko jednoduchá úloha, ale setkal jsem se s ní až na vysoké, kde to byla jedna ze semestrálních prací v nějakém předmětu o programování a také to byla úloha v matematické logice (prohledávání stavového prostoru). Řešení pomocí backtrackingu je o něco jednodušší než pomocí "simulace šachovnice", ale stejně se u ní zapotíš, což už si asi zjistil.

.NET › ToolBar
10. 8. 2010   #132415

Možná to bude tím, že ji pojmenovali ToolStrip.

.NET › pohyb s myší
6. 8. 2010   #132274

Místo mouse_event používej SendInput (http://msdn.microsoft.com/en-us/library/ms646310(v=VS.85).aspx):

[DllImport("User32.dll")]

public static extern uint SendInput(uint numberOfInputs, [MarshalAs(UnmanagedType.LPArray, SizeConst = 1)] INPUT[] input, int structSize);

[StructLayout(LayoutKind.Explicit)]
public struct INPUT
{
[FieldOffset(0)]
public int type;
[FieldOffset(4)] //*
public MOUSEINPUT mi;
[FieldOffset(4)] //*
public KEYBDINPUT ki;
[FieldOffset(4)] //*
public HARDWAREINPUT hi;
}

[StructLayout(LayoutKind.Sequential)]
public struct MOUSEINPUT
{
public int dx;
public int dy;
public uint mouseData;
public uint dwFlags;
public uint time;
public IntPtr dwExtraInfo;
}

[StructLayout(LayoutKind.Sequential)]
public struct KEYBDINPUT
{
public ushort wVk;
public ushort wScan;
public uint dwFlags;
public uint time;
public IntPtr dwExtraInfo;
}

[StructLayout(LayoutKind.Sequential)]
public struct HARDWAREINPUT
{
uint uMsg;
ushort wParamL;
ushort wParamH;
}



No a pak máme 2 tlačítka, když na jedno z nich klikneme a bude tam takováto kód:
private void button1_Click(object sender, EventArgs e)

{
INPUT[] mouse = new INPUT[3];

mouse[0].type = 0/*INPUT_MOUSE*/;
mouse[0].mi.dx = -100;
mouse[0].mi.dy = -100;
mouse[0].mi.dwFlags = 0x0001/*MOUSEEVENTF_MOVE */;
mouse[0].mi.time = 0;
mouse[0].mi.dwExtraInfo = (System.IntPtr)0;

mouse[1].type = 0/*INPUT_MOUSE*/;
mouse[1].mi.dx = 0;
mouse[1].mi.dy = 0;
mouse[1].mi.dwFlags = 0x0002/*MOUSEEVENTF_LEFTDOWN */;
mouse[1].mi.time = 0;
mouse[1].mi.dwExtraInfo = (System.IntPtr)0;

mouse[2].type = 0; /*INPUT_MOUSE*/
mouse[2].mi.dx = 0;
mouse[2].mi.dy = 0;
mouse[2].mi.dwFlags = 0x0004; /*MOUSEEVENTF_LEFTUP*/;
mouse[2].mi.time = 0;
mouse[2].mi.dwExtraInfo = (System.IntPtr)0;

uint ret = SendInput((uint)mouse.Length, mouse, Marshal.SizeOf(mouse[0].GetType()));
}


tak se pohne myš relativně o -100, -100 a "klikne" na tomto novém místě, takže pokud je na tom místě jiné tlačítko, tak se ti to dostaneme zase do OnClick toho tlačítka.

Java › přidávání čísel do pole
5. 8. 2010   #132245

Když tak sem dej kód a ty chyby a zase se ti dostane odpovědi :smile1: .

Java › přidávání čísel do pole
5. 8. 2010   #132243

A jen tak mimochodem ... nemáš náhodou v názvu těch tlačítek ty číslice? Že by pak stačilo něco jako:



public void actionPerformed(ActionEvent event) {
poradi.append(event.getSource().getName());
pole.setText(poradi.toString());
}

Java › přidávání čísel do pole
5. 8. 2010   #132242

Takhle nějak:

public class Trida {


private StringBuffer poradi;

public Trida(){
poradi = new StringBuffer();
}

public void actionPerformed(ActionEvent event) {
if (event.getSource() == jednicka ) {
int cislo = 1;
poradi.append(cislo);
pole.setText(poradi.toString());
}

if (event.getSource() == dvojka ) {
int cislo = 2;
poradi.append(cislo);
pole.setText(poradi.toString());
}

Java › přidávání čísel do pole
5. 8. 2010   #132240

poradi je teď lokální proměnná. Udělej z ní instanční (třídně instanční :)) a budeš spokojen :)

Java › RS232 v Jave
5. 8. 2010   #132239
Java › přidávání čísel do pole
5. 8. 2010   #132237
Java › RS232 v Jave
5. 8. 2010   #132233

Obecně řečeno ano - některé piny lze ovládat přímo, ale jestli to lze i s touto knihovnou na tvém OS, tak to si musíš vylaborovat sám.

Java › přechod na jiné okno tlačítkem
3. 8. 2010   #132156

Tak řekněme, že v Delka.java máš třídu Delka, takže v reakci na stisk tlačítka bude:



Delka delka = new Delka();

delka.setVisible(true);


nebo to můžeš mát řešené jako v té třídě Okno - budeš to mít v konstruktoru.

Java › přechod na jiné okno tlačítkem
3. 8. 2010   #132145
Java › přechod na jiné okno tlačítkem
3. 8. 2010   #132139

Pokud to máš jako Frame, tak setVisible(true).

Java › přechod na jiné okno tlačítkem
3. 8. 2010   #132136

Ty programy máš jako extra programy? Nebo jenom dialogová okna? A to menu je s nimi jak spojené? Nebo je to další program?

Hry › naprogramování sportovního m…
3. 8. 2010   #132134

Tak to si musíš osvojit základy (algoritmizace) a je jedno v jakém programovacím jazyce (pro začátek ti bude stačit Pascal nebo můžeš zkusit Python). A kalkulačka je docela dobrá meta, až jí dosáhneš, tak budeš k manageru o dost blíž než si teď, ale bude ti to připadat o dost dál než teď ;)

Hry › naprogramování sportovního m…
3. 8. 2010   #132126

Pro začátek sis vybral docela velké sousto. Jestli nemáš s programováním velké zkušenosti (nenapsal si, co umíš !), tak to pro tebe poměrně dlouho trvající projekt. Nejlepší bude, když napíšeš, co umíš. No a pokud nic, tak viz Gatuso :) resp. začni něčím o několik řádu jednodušším.

Java › čtení ze souboru
3. 8. 2010   #132125

Chybu děláš v tom, že bufUkol tvoříš znovu a znovu, sice pak do něj děláš append, ale vždy do nového - prázdného. Definuj ho mimo cykly, asi nejlépe na úrovni definice vstup.

C / C++ › rekurze vs zasobnik
29. 7. 2010   #131924

Ještě otázka ... v jaké konfiguraci si to měřil (Debug - _DEBUG/Release - NDEBUG)? Nesmíš zapomenou, že stack (a další) jsou objekty ... což samo o sobě může vést k nějakému zdržení, ale v ladícím režimu (Debug) je to ještě navíc prošpikováno různými kontrolami atd., takže tu o zdržení není nouze (na jednom volání to nikdo nepozná, na milionu volání už to poznat je).

Samozřejmě k tomu kódu mám výhrady, ale pokud je funkční, tak budiž :) No a pokud si to měřil v Release konfiguraci a chceš dosáhnout větší rychlosti,t ak si asi budeš muset napsat svůj jednoúčelový a tudíž optimálnější stack.

Visual Basic › Problem OLE nebo ActiveX
29. 7. 2010   #131919

A nemáš tam nějaký "firewall", co blokuje tyhle věci (skriptování, ActiveX apod.)?

A co služba (service) "Spouštěč procesů serveru DCOM" (DCOM Server Process Launcher) běží?

A na jaké verzi Windows to vlastně funguje/nefunguje?

C / C++ › rekurze vs zasobnik
29. 7. 2010   #131918

Ještě tu nejdůležitější část - rekurzivní verzi inorder :). A přepodkládám, že pro naplnění stromu si pro obě varianty použil stejnou fukvi vloz i stejný zdrojový soubor plný čísel, je to tak?

MySQL › Seřazení dle datumu
29. 7. 2010   #131914

Zkusil bych buď:

SELECT tema.id,tema.predmet,datum

FROM tema, zpravy
WHERE tema.id=id_tema
GROUP BY tema.id
ORDER BY datum DESC;


nebo

SELECT DISTINCT tema.id,tema.predmet

FROM tema, zpravy
WHERE tema.id=id_tema
ORDER BY datum DESC;

C / C++ › rekurze vs zasobnik
29. 7. 2010   #131913

Na okraj poznámka: filipika proti goto je takový kolorit, ale před časem jsem musel uznat, že jeho úplné zatracování je stejně nesmyslné jako každá jiná "slepá víra". V tomto tvém případě použití se ukazuje, jak může být program s použití goto značně nepřehledný. Ovšem při jeho vhodném použití lze ušetřit poměrně dost.

A teď k tomu tvému programu. Proč sem nedáš oba ty algoritmy? I to jak plníš ten strom atd. prostě kompletně celé. A nejlépe tak, jak si to měřil (zápis do souboru). Pokud chceš říct, proč je to v tvém konkrétním případě tak a tak, tak se musíš dát konkrétní kód.

C / C++ › Nové okno a v něm webová str…
29. 7. 2010   #131912

Nějak ty stránky musíš zobrazit. Pokud ti stačí zdrojový kód, tak editační pole, ale ty asi chceš tu stránku vidět tak, jak jí Curo stvořil, že? :smile1: Sám si to asi psát nechceš, takže se podívej na IWebBrowser2, případně zabrus do nějaké nadstavby (.NET, MFC), kde existují cosi jako HTML view.

Python › Windows Vista (změna asociac…
28. 7. 2010   #131874
C / C++ › kopírování komponent v C++ ???
28. 7. 2010   #131871

Rozhodně jde pole komponent:



TPanel* panely[10];

for (int i = 0;i < 10;i++) {
panely[i] = new TPanel(Form1);

panely[i] ->Parent = Form1;
panely[i] ->Top = 0;
panely[i] ->Left = pPredchozi->Right;
panely[i] ->Width = pPredchozi->Width;
panely[i] ->Height = pPredchozi->Height;

pPredchozi = panely[i];
}

C / C++ › kopírování komponent v C++ ???
28. 7. 2010   #131869

Tak to budeš potřebovat pole.

C / C++ › rekurze vs zasobnik
28. 7. 2010   #131868

Když píšeš "... musí se prvky vypisovat a odebírat ..." (odebírat by nemusely), tak jestli děláš v tom nerekurzivním něco navíc proti rekurzivnímu (zejména nějaký ten výpis navíc), tak tomu rozdílu nemůžeš divit.

Jinak takto obecně položená otázka ... tak odpovědí budou takové ty obecně platné pravdy. Vždycky jde napsat jedna verze super optimálně a druhá super neoptimálně - řekl bych, že hodnotit se dá pouze konkrétní implementace.

C / C++ › kopírování komponent v C++ ???
28. 7. 2010   #131866

Něco takového:

TPanel* pNovyPanel = new TPanel(Form1);


pNovyPanel ->Parent = Form1;
pNovyPanel ->Top = 0;
pNovyPanel ->Left = pPredchozi->Right;
pNovyPanel ->Width = pPredchozi->Width;
pNovyPanel ->Height = pPredchozi->Height;

Python › Windows Vista (změna asociac…
28. 7. 2010   #131860

Asi hledáš Ovládací panely -> Výchozí programy -> Přidružit typ souboru nebo ....

C / C++ › kopírování komponent v C++ ???
28. 7. 2010   #131858

Budeš k tomu potřebovat jeden for cyklus. V něm budeš tvořit nové instance TPanel a kopírovat jejich parametry (pokud nemáš k dispozici kopírovací konstruktor), tj. např. stejné rozměry. No a pozici budeš "počítat" z toho vedle stojícího.

C / C++ › cpp .o --&gt; undefined ref…
28. 7. 2010   #131857

A to ti fakt nefunguje toto:

g++ main.o array.o -o myapp

C / C++ › cpp .o --&gt; undefined ref…
28. 7. 2010   #131848

A v čem to píšeš? Jak vypadá tvůj makefile? Nejlepší by bylo, kdyby si sem hodil celý projekt.

Právo a podnikání › Programovanie - vypocet casu…
26. 7. 2010   #131771

O peníze jde až v první řadě ;)

A ano, je tam podnikatelské riziko. Ta programátorská lemra si udělá chybu, kterou pak 3 dny hledá a přitom jde o moje penízky. Což je myslím naprosto přesná definice zaměstnaneckého poměru :)

To, co tomu programátorovi chybí, je motivace. Když má fixní plat, tak co ho nutí udělat zakázku dřív? Co z toho bude mít mimo dobrého pocitu? Dostane pochvalu? Dostane přidáno? Někdy stačí to někdy ono. Někdy stačí rozdělit plat na fixní část a na část závislou na "úspěchu firmy", jenom pozor na to, aby to nakonec nebyly dvě fixní položky :). Na tohle jsou (vysmívané) manažerské kurzy, kterak motivovat lidi. A vo vo tom to je ... :)

.NET › Dědičnost, přetížení - Overr…
26. 7. 2010   #131766

Equals s parametrem object je přece virtuální metoda třídy Object, tak proto override.

Ta druhá "jen" přetěžuje Equals.

Právo a podnikání › Programovanie - vypocet casu…
26. 7. 2010   #131762

Nemám agentůru natož reklamní a v podstatě jsem na druhé straně barikády. Ale dle mých zkušeností se takovýto problém neřeší způsobem: kolik hodin na to potřebuješ * mzda = výsledná cena. Řeší se to způsobem: o jak velký zásah jde? Vejdeš se do 3 dnů? Pak je cena 10kSk (něco musí vydělat i majitel, ne? :)) A potom buď jedete na jedné lodi o výdělek nebo prodělek se podělíte nebo nejedete na jedné lodi a pak je lepší použít úkolovou mzdu. On se pak i tem programátor pochlapí v odhadech :).

Jinak sochat program není to samé jako sochat pračku. Problémy, které mohou nastat v průběhu realizace, nemusí odhadnout ani velezkušený analytik, takže říct, že je to jeho chyba je dost drsné. Je to podobné jako odhad délky cesty z Prahy do Bratislavy. Člověk se koukne do navigace, zjistí, že tam za 4 hodiny bude a nakonec stojí před Brnem půl dne kvůli rozlité kyselině a je to jeho chyba?

Právo a podnikání › Programovanie - vypocet casu…
26. 7. 2010   #131756

Tak tak, přesnost odhadu záleží na velikosti projektu a pak také na zkušenosti programátora. Někdo nechce dávat termíny, protože má tendenci podceňovat (to dělají skoro všichni :)) a pak se zadře na nějaké blbině (to dělají taky skoro všichni :)). Odhadnout alespoň trochu přesně časový úsek/cenu pro tvorbu/úpravu/opravu programu po oznámení jména toho projektu :) je zatraceně těžké. Minimálně to chce hrubou analýzu a to může trvat i několik dní/týdnů - a stejně něco, co zásadně mění skoro všechno, se člověk dozví až když ukáže prototyp atd. No a nejlépe se odhaduje doba/cena při použítí hotových/koupených komponent.

.NET › C# upload souboru(FTP)
26. 7. 2010   #131755

Ošetření ... to asi čekáš něco jako zjištění, že ten adresář existuje a když neexistuje, tak ho vytvořit ... no a co "kacířský způsob" vždy vytvořit adresář před nahrátím souboru?

Visual Basic › pexeso
26. 7. 2010   #131748

Jde to, vždy záleží pouze na reprezentaci vnitřních dat (karty budou označené jako stejné i když budou mít rozdílný obsah). A s největší pravděpodobností to půjde i přes makra.

.NET › C# upload souboru(FTP)
26. 7. 2010   #131745
C / C++ › Změna textu v ToolTipu (Win3…
26. 7. 2010   #131744

Jsou 2 možnosti. Tu první ty nechceš :smile1: , a to je nastavení textu pro každé nové zobrazení přes callback. Ve struktuře TOOLINFO místo textu dáš LPSTR_TEXTCALLBACK a následně budeš obsluhovat notifikaci TTN_GETDISPINFO.

Druhá varianta je asi ta, co chceš ty - měnit text v zobrazeném tooltipu. Na to bude asi nejlepší ukázka funkčního kódu změny textu:




TOOLINFO sToolInfo;
wchar_t wzTemp[128]

sToolInfo.cbSize = sizeof(TOOLINFO);
sToolInfo.uFlags = TTF_TRACK;
sToolInfo.hwnd = NULL;
sToolInfo.hinst = NULL;
sToolInfo.uId = 0;
sToolInfo.lpszText = wzTemp;

sToolInfo.rect.left = 0;
sToolInfo.rect.top = 0;
sToolInfo.rect.right = 0;
sToolInfo.rect.bottom = 0;

::SendMessage(m_hIconicTooltip, TTM_UPDATETIPTEXT, 0, (LPARAM)(LPTOOLINFO)&sToolInfo);
::SendMessage(m_hIconicTooltip, TTM_TRACKACTIVATE, true, (LPARAM)(LPTOOLINFO)&sToolInfo);


Jednou při vytvoření musíš samo volat TTM_ADDTOOL atd.

.NET › Inicializace formuláře
20. 7. 2010   #131513

Když jsem ti chtěl napsat ukázku kódu, tak jsem asi přišel na tvůj problém :). Je to tento řádek

this.InitializeComponent(); // zaciname znovu

v button2_Click. Tím si vytvoříš nové instance všech ovládacích prvků. Pokud chceš jenom vymazat obsahy editačních polí, nastavit texty ve statickém textu, změnit stav tlačítek atd. tak to musíš udělat jinak (nejlépe vlastní funkce, která bude výchozí stav tvořit). Když to opravíš, tak ti bude fungovat i tvůj stávající postup. Jinak ten mnou navrhovaný způsob:



private void button2_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.InstanceRef = this; //ulozim si instanci formu1
Turnaj.Tur.Clear(); // vymazu udaje o turnaji

form2.ShowDialog();

// s podminkou na hodnotu ve form2
if (form2.nějaká tvoje property)
{
button1.Enabled = true;
}
}

.NET › Inicializace formuláře
20. 7. 2010   #131493

Z úkazky kódu není patrné, proč by to nemělo fungovat, ale jednu věc změnit můžeš. Máš form1, v něm zobrazuješ form2 jako modální, nebo-li se k formu1 po dobu zobrazení formu2 nedostaneš. Takže pokud chceš změnit nastavení formu1 dle čehosi ve formu2, tak to nemusíš dělat přes referenci, ale po skončení ShowDialog kouknout na nastavení ve formu2 (nějaké vlastní instanční proměnné) a podle toho změnit nastavení ve formu1.

.NET › registry-ulozeni
15. 7. 2010   #131394

Klasický obyčejný datový soubor, do a z kterého si ukládáš/mažeš/čteš dle libovůle. Všechno záleží na tom, čeho chceš vlastně dosáhnout, jaká ta data jsou, jaký je jejich objem atd.

.NET › registry-ulozeni
15. 7. 2010   #131390

Tvoje původní otázka se týkala stavu, kdy při ukončení chceš uložit stav (někam) a při startu ho zase načíst. Soubor je správně, serializace je jedna z možností, jak dosáhnout kýženého o něco snadněji. Principem serializace je uložení/načtení v jednom "balíku". Můžeš to zkusit ohnout přes rozhraní typu ISerializable nebo přes XmlSerializer, ale nejsem si jistý, jestli dosáhneš stavu, který chceš.

Pokud chceš mít ukládání na etapy, mít v podstatě maximální kontrolu na ukládáním, čtením, mazáním, přepisováním, tak to už spíše vede na "normální" soubor. Asi si budeš muset ujasnit, co vlastně chceš.

.NET › Zpřístupnění ovl. prvků jiné…
15. 7. 2010   #131386

Jedna z možností je předat referenci na instanci toho formu do té druhé třídy.

.NET › registry-ulozeni
14. 7. 2010   #131364

Tak se zkus ještě podívat na pojem "serializace".

.NET › sql a vyjimka
14. 7. 2010   #131363

V podstatě si to měl dobře, jen to vlož do jednoho try bloku, něco jako:



try
{
sql.Open();

cmd = new SqlCommand(select, sql);

reader = cmd.ExecuteReader();

// ... atd.
}
catch (SqlException e)
{
Console.WriteLine(e.Message);
}
finally
{
sql.Close();
}


V try bloku nemusí být jen ty části, které vyhodí vyjímku.

.NET › poker (null reference)
14. 7. 2010   #131341

V konstruktoru Hra tu chybí inicializace jednotlivých prvků pole poleHráčů, něco jako:



for (int i = 0; i < poleHráčů.Length; i++)
{
poleHráčů[i] = new Player();
}


BTW: možná je to jenom můj předsudek, ale diakritika v názvech tříd, funkcí, proměnných .... :smile19:

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032021 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý