No video

Cross Platform Graphical User Interfaces in C++

  Рет қаралды 865,326

javidx9

javidx9

Күн бұрын

Пікірлер: 1 500
@marenol9587
@marenol9587 4 жыл бұрын
14:31 "and then click build" > clicks build "but before you click build and this is really important" > heart drops "go and make yourself a cup of coffee" > heart starts beating again
@j.s.1869
@j.s.1869 4 жыл бұрын
Lmao 😂 Fam! I is dead!! ☠️☠️💀
@maroonshaded
@maroonshaded 4 жыл бұрын
Same lol!
@whoshotdk
@whoshotdk 4 жыл бұрын
Make coffee first, then click build. Gotcha. Wouldn't want to be *too* efficient :D
@jimmysyar889
@jimmysyar889 4 жыл бұрын
sameee!!!
@DavidJapanese
@DavidJapanese 4 жыл бұрын
me too
@charlierobson
@charlierobson 5 жыл бұрын
I find most tutorial videos almost impossible to sit through. They're either aimed too low, assuming the viewer is a complete newbie, or too high, assuming the viewer is an (insert latest framework here) acolyte. You are the refreshing exception. An outlier, no less. The content is without fluff or fat, and your presentation style is comfortable and never, ever, condescending. The editing is perfect for the content and your whiteboard presentations never grate. Your style is engaging and you never stray far from the point. The jokes are subtle and never grate. You are never anything other than yourself. I hardly ever write comments but today I felt the spirit. Congratulations on producing a most splendid channel and long may you love doing what you're doing, and passing that love on to us. Thank you.
@javidx9
@javidx9 5 жыл бұрын
Thank you Charlie, those are kind words and very much appreciated. Thank you very much!
@braindeveloperdimensional5579
@braindeveloperdimensional5579 5 жыл бұрын
I am making a cross platform GUI API. It's not complete yet, just implemented some buttons and text box with scroller. It's ready for use. Its not good enough for a sophisticated application but it's colourful. As colourful as modern websites. Its almost the same in style like this one :- kzfaq.info/get/bejne/rpmkfKuZt92ogIk.html It has more features than the one shown in the video link above.
@user-qi2ke1hx1x
@user-qi2ke1hx1x 5 жыл бұрын
i think so and appreciate javidx for teach this to us
@chriswinslow
@chriswinslow 5 жыл бұрын
@@braindeveloperdimensional5579 This looks interesting, is it for C also?
@braindeveloperdimensional5579
@braindeveloperdimensional5579 5 жыл бұрын
@@chriswinslow It's in C and can be used for C and C++.
@autonomy_
@autonomy_ 5 жыл бұрын
I’m a lower level programmer with a year or so experience in GUI programming. This video struck a perfect balance of high level concepts, and low level implementation. Instant sub!
@javidx9
@javidx9 5 жыл бұрын
Thanks Alan!
@Miles-co5xm
@Miles-co5xm 2 жыл бұрын
@@javidx9 Hello , as regular viewers of the channel would know !!
@javidx9
@javidx9 2 жыл бұрын
Hello! 😄
@Miles-co5xm
@Miles-co5xm 2 жыл бұрын
@@javidx9 AAAAAAA , REPLYYYYYY ,
@Game-On1080
@Game-On1080 2 жыл бұрын
May be low level language are faster exicution and better result because of the close to the hardware
@piotreek7
@piotreek7 5 жыл бұрын
I recommend making a cup of coffee AFTER clicking “build” button ;)
@KaaBockMehr
@KaaBockMehr 5 жыл бұрын
or even better: use the build button to run your coffee machine at the same time :D
@stropheum
@stropheum 5 жыл бұрын
@@KaaBockMehr One of the best uses of a pre-build script feature
@Idlecodex
@Idlecodex 4 жыл бұрын
@ÖnîÖns Cut, Lots of bugs afterward! :)
@BennyBrud
@BennyBrud 4 жыл бұрын
@@KaaBockMehr Good idea, just make sure to support other drinks too: template Cup& cup_of(const T&);
@khatharrmalkavian3306
@khatharrmalkavian3306 3 жыл бұрын
@@VerseChorusCurse You could get away with an ESP32 for something that simple.
@schnert0
@schnert0 5 жыл бұрын
I was just wondering yesterday how to add a GUI to my program, so the timing of this video was absolutely perfect.
@javidx9
@javidx9 5 жыл бұрын
Excellent! I hope it helps!
@spectrecular9721
@spectrecular9721 5 жыл бұрын
2:20 - "Three million years ago" 🤣
@nosenseofhumor1
@nosenseofhumor1 5 жыл бұрын
i am so jealous of this generation of new developers who get to benefit from stuff like this. you make some amazing content and i wish you were around when i was first trying to learn software engineering.
@pearz420
@pearz420 5 жыл бұрын
"I've never used a Mac." I see you are a man of culture as well.
@cameronholt4735
@cameronholt4735 4 жыл бұрын
this comment... is. amazing.
@sweetberries4611
@sweetberries4611 4 жыл бұрын
and circlejerky too
@pearz420
@pearz420 4 жыл бұрын
Optimus27 average consumers
@dmitrystan4614
@dmitrystan4614 4 жыл бұрын
mac for stupid people
@unoarecare5728
@unoarecare5728 4 жыл бұрын
Ok homeless cheap android user 😂
@timothy8428
@timothy8428 5 жыл бұрын
I took one look at the GUI code generated by Visual Studio and backed away slowly, not taking my eyes off it until I was a safe distance away. Then I closed and did not save.
@delian66
@delian66 5 жыл бұрын
You should have also rebooted your system, just in case...
@codejunki567
@codejunki567 4 жыл бұрын
Why is that?
@SoftBreadSoft
@SoftBreadSoft 4 жыл бұрын
The boilerplate for windows and linux are both aids and cancer and gonorrhea of the eyes
@didaloca
@didaloca 4 жыл бұрын
I never understood, even as a new programmer; why they raped the language like that.
@bigdawg4670
@bigdawg4670 4 жыл бұрын
@@didaloca I never understood why they had to redefine every single variable type. What's wrong with int*? Why is PINT better?
@rban123
@rban123 4 жыл бұрын
I was pissed when he used x and y in that nested for loop. This comment made by i and j gang
@ichadhr8860
@ichadhr8860 4 жыл бұрын
lol
@johnnypepperonii
@johnnypepperonii 4 жыл бұрын
don't you forget k and n sir!
@deepudinesh2720
@deepudinesh2720 4 жыл бұрын
Ah yes a man of culture, I see.
@penguin2251
@penguin2251 4 жыл бұрын
Where is 'i' and 'ii' gang at?
@pinpon163
@pinpon163 4 жыл бұрын
@@penguin2251 So you have chosen death
@AJSquirrel53
@AJSquirrel53 5 жыл бұрын
I really wish you had more time to make more videos! They are incredibly well thought out and insightful, and you actually put in the effort to explain why you make certain decisions. For example, I was able to (semi) easily translate your Asteroids game into C to run on a Linux embedded system/FPGA device with external peripherals for a school project last semester. I'm able to go from 0 to 100 quickly when learning from your videos. Thank you!
@javidx9
@javidx9 5 жыл бұрын
Thanks Austin, Im pleased you got asteroids working embedded. Great Stuff!
@rajarshivaidya444
@rajarshivaidya444 5 жыл бұрын
I've searched far and wide for C++ related tutorials(video) for a developer who is good at C#, Java, Python, Web Frameworks, ..., and found very little results which satisfied me. They all start at vars, loops, ... and then they conclude at stl(most of the times). Finally, at long last, found someone who's teaching advanced stuff. Thank you for the tutes! Have a great day
@josephkelchner8592
@josephkelchner8592 4 жыл бұрын
Totally love this tutorial!!! First time using Visual Studio(downloaded 2019 uninstalled, then installed 2017 for same look, First time using wxWidgets, First time using C++. From compiling wxWidgets to memory leak at the end which I figured out how to fix. Everything works!!! Great Job!!!
@theskillwarzchannel
@theskillwarzchannel 2 жыл бұрын
Good luck learning C++, it's a lot, but it's doable. Was my first programming language too.
@MrBsehratmaannking
@MrBsehratmaannking 4 жыл бұрын
Lately, I have been getting quite pissed at the courses I'm taking in my masters degree of computer science, specifically the software track because even though I've been studying computer science for 5.5 years now, I have never learned how to create any actual software, from GUI's to proper back ends, to proper databases, and how to properly connect them all in a secure way for actual deployment. Nor have I been taught how to properly make any modern website, webapp, mobile app, game, system etc. And I have been having so many deadlines and assignments that are more research-oriented that I have no energy or time left to learn these things on my own time. Since yesterday I have had a bit of free time and finally decided to try to make my first GUI desktop app. However, for some reason information on this topic is so hard to get by online, there are no main hubs where I can find information it seems, so this video picked my interest. I liked the approach to showing some different options and giving some context, which is what I wanted. So, thanks for that
@Dave-nv5rv
@Dave-nv5rv 4 жыл бұрын
I am the complete opposite. I've never been to college but I've created a great number of full-stack software applications on many platforms that have had tens of thousands of users. Just as I need to have the discipline to attend courses and do assignments, you're going to have to try to find a way to make time to create applications. Honestly, Windows Presentation Foundation (WPF) using C# is what I would start with. There are many WPF books that go step by step to create a full fledged desktop program. That is how learned; I bought programming specific books (WPF Unleashed as example) and just followed along page by page. Once you learn with the simpler WPF with C# advanced frameworks will make more sense. Using c++ with a custom GUI library is not a favorable way to learn. Good luck and take care
@steveymcneckbeard
@steveymcneckbeard 4 жыл бұрын
@Rationalistic course you are, but hey this is KZfaq comments, you can be whoever you like.
@Elite7555
@Elite7555 4 жыл бұрын
You are studying computer SCIENCE, not web design.
@rv4tyler
@rv4tyler 4 жыл бұрын
... and that is why I bailed from grad school. Also, most of the faculty considered the PC a fad and only used them to access the mainframe.
@SpricesExist
@SpricesExist 3 жыл бұрын
@Rationalistic technical universities in Europe aren't as bad imo. The syllabus is mostly relevant, the time commitment isn't that high, tuition free for Europeans and very affordable even for intl students. I had to spend less than 25 hours weekly last sem for all coursework combined..
@williamchamberlain2263
@williamchamberlain2263 5 жыл бұрын
"Why won't it bloody compile?" is often the giant step of disheartenment for me for new libraries and frameworks.
@figloalds
@figloalds 5 жыл бұрын
Most of them work out of the box, when it doesn't your environment is not properly set up or you didn't follow instructions correctly. Other times you really have to fix something on your PC, Environment or the code itself.
@NoName-mr1lh
@NoName-mr1lh 5 жыл бұрын
Same here but I'm starting to get the hang of fixing the issue which is usually setting up the library and include paths. Still learning...
@edwardgibbon2557
@edwardgibbon2557 4 жыл бұрын
And then it's a-holes like Felype that make it even worse! Search for help and you'll get useless discouraging "I'm better than you" nerd talk from 4 billion strangers
@theterribleanimator1793
@theterribleanimator1793 4 жыл бұрын
@@edwardgibbon2557 thats a lot of programmers.
@SirusStarTV
@SirusStarTV 4 жыл бұрын
nodejs modules work most of the time
@zanzaraloggan3713
@zanzaraloggan3713 5 жыл бұрын
I was wondering why no one talks about a cross-platform C++ gui... and you come with this video! You are incredible!
@braindeveloperdimensional5579
@braindeveloperdimensional5579 5 жыл бұрын
I am making a cross platform GUI API. It's not complete yet, just implemented some buttons and text box with scroller. It's ready for use. Its not good enough for a sophisticated application but it's colourful. As colourful as modern websites.
@zanzaraloggan3713
@zanzaraloggan3713 5 жыл бұрын
@@braindeveloperdimensional5579 sounds amazing
@llothar68
@llothar68 5 жыл бұрын
Because it's not possible anymore. The cross-platform toolkits are all design state of the art of 2003 (XP). Can't even handle animations from 2009 (Win7). There is no way then writing the gui client native. Try stuff like recycle view controller.
@llothar68
@llothar68 5 жыл бұрын
@@braindeveloperdimensional5579 The first steps are always fucking easy and then you realize it's futile and doesn't scale.
@0x1EGEN
@0x1EGEN 4 жыл бұрын
There's plenty of frameworks that allows you to create cross platform GUI's using native elements. en.wikipedia.org/wiki/List_of_platform-independent_GUI_libraries
@leonardochiruzzi7642
@leonardochiruzzi7642 5 жыл бұрын
I hope you will continue with this series because I use wxwidgets and I often have difficulty understanding. You are great, another precious video. Thanks a lot.
@javidx9
@javidx9 5 жыл бұрын
Thanks Leonardo, I think I will, this video had a great response!
@propertypals5104
@propertypals5104 3 жыл бұрын
Thank you very much! C++ is the only language I have any handle on, and I've been wanting to write an app with a GUI for a couple years now. Finally I can! I followed your instructions and everything compiled and ran, start to finish, ending with mine-sweeper. Cheers!
@felns8166
@felns8166 4 жыл бұрын
My God, the feeling when you said "but wait, before you click build, and this is very important..." literally a second after I clicked build cannot be described by words
@harleyspeedthrust4013
@harleyspeedthrust4013 4 жыл бұрын
Oh dear sweet God and Jesus that mess at 18:40 takes me back to when I was learning the Win32 API in x86 Assembly...
@bigdraco3006
@bigdraco3006 4 жыл бұрын
woah, RE pro?
@salainen6850
@salainen6850 3 жыл бұрын
Oh nice, I'm doing that right now
@petercsala
@petercsala 5 жыл бұрын
No mom, I'm not procrastinating
@johnnypepperonii
@johnnypepperonii 5 жыл бұрын
HAHAHAHA reading this 2 hours before my exam.. damn..
@Nick-wz6tz
@Nick-wz6tz 4 жыл бұрын
@SweetTea Thank you, bro. strange , but it kinda helped )))
@asherhaun
@asherhaun 4 жыл бұрын
taking the ACT tommorow :D
@angelcaru
@angelcaru 3 жыл бұрын
r/madlads
@andrzejwsol
@andrzejwsol 4 жыл бұрын
Awesome tutorial! One of the very few times I've been able to sit through a lengthy tutorial without falling asleep and actually have everything work as described, too.
@kevinstefanov2841
@kevinstefanov2841 4 жыл бұрын
"Some of us just love C++ so much that that's the language we are going to stick with"... I love your channel! I'm a recent graduate in computer science and C++ is BY FAR my favourite language. I'm at page 353 in "The C++ Programming Language" book. Keep the great videos coming! C++ for life!
@shehabbadawy9523
@shehabbadawy9523 3 жыл бұрын
I'm currently reading this book, I feel frustrated every time I read it because there are a lot of things that I can't get even though I know C and have a good knowledge about OOP from C# and JAVA , I'm in part 1 ''A Tour of C++'', should I keep reading it ?
@kevinstefanov2841
@kevinstefanov2841 3 жыл бұрын
@@shehabbadawy9523 it's not a book for beginners in c++
@shehabbadawy9523
@shehabbadawy9523 3 жыл бұрын
@@kevinstefanov2841 i know I wanted to ask you if it paid off at the end
@kevinstefanov2841
@kevinstefanov2841 3 жыл бұрын
@@shehabbadawy9523 i would say there are better books. Lately i've gone to manuals and online courses instead of books cuz books tend to be dry. Right now im doing the "Learn Assembly Language by making games for the Atari" course on Udemy, reading my second book on C called "Extreme C" and reading a really cool manual about C/C++ optimizations by Agner Fog (he actually has a bunch of manuals but the rest are even more technical). In my opinion books are too slow - you can get the same amount of knowledge or even more with a tenth of the time by doing the right online courses and finding the right manuals. Also, I want to add that I've switched to C now, not C++ anymore. C is way better. Right now i'm working on Xen Hypervisor for my job and it's really fun. It's made mainly in C.
@shehabbadawy9523
@shehabbadawy9523 3 жыл бұрын
@@kevinstefanov2841 wow nice, well c is my main language but didn't make any real project with it except a trivial airport system and using it in problem solving questions Can u suggest some projects to do with it Thank u very much for replying
@debbahisaad109
@debbahisaad109 5 жыл бұрын
The way you code it on the fly makes it look easily feasible, honestly following the code I really didn't see how 45mn went on. Very clear and well explained. Great thanks for the time and effort spent on this, and for efficiently sharing practical knowledge the way you do. Hell I did sub and hit the bell!
@javidx9
@javidx9 5 жыл бұрын
Hey cheers Debbahi!
@kevinarannarodast
@kevinarannarodast 5 жыл бұрын
I'm learning a lot from your videos! thank you. I do not speak English very well but you explain yourself clearly :)
@javidx9
@javidx9 5 жыл бұрын
That's great and thanks Orphein!
@rezneba101
@rezneba101 3 жыл бұрын
"I've never used a Mac" .. I love you
@mrcxx8694
@mrcxx8694 3 жыл бұрын
Well I have used a Mac and, indeed, they're awful. Windows is way better but Linux is easily better than those two added together. I have plans to jump to Linux sometime in the future.
@rezneba101
@rezneba101 3 жыл бұрын
@@mrcxx8694 I disagree but ok
@gutoguto0873
@gutoguto0873 3 жыл бұрын
@@rezneba101 Both opinions are respectable! Linux is better at most things, Windows has it's uses though!
@unguidedone
@unguidedone 3 жыл бұрын
@@gutoguto0873 yes yes this is correct and macs are totally useless
@Etienne_H
@Etienne_H 3 жыл бұрын
Why your code and his is ugly. Windows nerd..
@NautilusMortanian
@NautilusMortanian 5 жыл бұрын
Staunch Qt C++ developer here, and I've done Qt for ~10 years. I still love it, but your low-sodium pitch on Wx has me interested. Great video.
@dangputerz
@dangputerz 4 жыл бұрын
qt looks terrible in windows and os/x compared to wx
@brandyballoon
@brandyballoon Ай бұрын
Thank you for speaking clearly! So many tutorials I stop watching after a very short time because the presenter is either mumbling, talking too fast and slurring, or speaking with such a thick foreign accent that I have to focus so hard on hearing what they say that my brain can't focus on what they're actually talking about.
@brock2k1
@brock2k1 4 жыл бұрын
You had me at "it's like applying a cheese grater to one's buttocks."
@adampace1492
@adampace1492 4 жыл бұрын
Well you see, my laptop is slow so I was able to have 2 cups of coffee instead of one
@JoeSteele
@JoeSteele 3 жыл бұрын
Bravo. I loved the comment about programmers working on large libraries having to spend a lot of time on managing build setup. Most if not all of the professional projects I have worked on involved hundred if not thousands of files and the compile times were measured in minutes (more than 60 sometimes). Thanks for the reality check.
@tsraikage
@tsraikage 4 жыл бұрын
dude. i find it funny that anytime i need something random always your videos pop up to save me 😂
@glitchy_weasel
@glitchy_weasel 5 жыл бұрын
Besides from making me interested in GUI programming, you just taught me how to play mineswepper by understanding how its code works.
@rextimmy
@rextimmy 5 жыл бұрын
13:34 It should be noted that Visual Studio 2017 = Visual Studio Version 15.x
@DanielGomez-mn5po
@DanielGomez-mn5po 2 жыл бұрын
just wanted to add my voice to the praise you have received for this video. It has been extremely clear and has been a much needed resource for me. Thank you!
@raghavpandit6254
@raghavpandit6254 3 жыл бұрын
A quick tip :) First start build process 10:30 then watch first ten minutes of video
@AustinAwsome
@AustinAwsome 3 жыл бұрын
For anyone else having a bunch of build errors popping up, my solution was to enable the "Windows 10 SDK" under the "Visual Components" tab in the Visual Studio installer.
@spejik
@spejik 3 жыл бұрын
Just a correction: the wx solution name (wx_vc15.sln) doesn't mean Visual Studio 15, but it stands for the version of Visual Studio in the Installer, which is 15.x.x for Visual Studio 17, 16.x.x for VS19 etc...
@jjones503
@jjones503 3 жыл бұрын
My first time trying to learn c++ started with me opening the default window application, looking at the wall of code, and going immediately to java. I've since decided java isnt my cup of tea for a paticular program i am working on, and this video has given me hope once again.
@averagehooligan620
@averagehooligan620 Жыл бұрын
your humor slips in subtly now and then and now I'm on my couch laughing at computer jokes on Saturday night
@reinholdpreiner4854
@reinholdpreiner4854 4 жыл бұрын
"... and printing stuff - for those that still print things."
@justin6409
@justin6409 3 жыл бұрын
15:00 There's actually a few programs that overcome this issue, it's called "CCache" and "DistCC", we use those at my office. It reduced compile times from about 45 minutes to just 5 minutes. Another thing to consider is the MSVC compiler is much slower than GCC.
@dirkjensen935
@dirkjensen935 3 жыл бұрын
Can I just say thank you!! I've spent a while building some code that does a bunch of small quality of life things that I needed to do while I was working on my honors project last year and now I'm finished I wanted to wrap it in a GUI so that it's more user friendly, I realised when I got to the end of the project converting it all to python would probably have been easier than trying to figure out GUI with C++. I had a brief encounter with MFC before deciding that I was not going to be able to figure that out (documentation is dense, and not a lot of great examples). Then your video pop's up on my radar, I'm up and running in a day and able to just get on with it. Thank you so much, trying to find a framework is hard enough without tutorials teaching you to set everything up just to stop before showing you any code and leaving you high and dry. This was the perfect amout of technical detail for me to just dive right in and the code examples wx widgets offers looks like enough to get everything that I need off the ground. Honestly have no idea how much easier you have made my life. Hats off to you Sir. :)
@MnemonicCarrier
@MnemonicCarrier 3 жыл бұрын
It wouldn't surprise me if this channel alone is responsible for a resurgence in C++. I haven't done any C++ for 20 odd years now, but am about to jump back in (head first).
@javidx9
@javidx9 3 жыл бұрын
It's changed a bit 😄
@BGFutureBG
@BGFutureBG 5 жыл бұрын
Is it a bad sign that I don't find WINAPI code messy anymore? 🤔😂 Have I been doing this for too long? 🤔🤔
@SirusStarTV
@SirusStarTV 4 жыл бұрын
Now i understand that shit, but not too much.
@SirusStarTV
@SirusStarTV 4 жыл бұрын
Now i understand that shit, but not too much.
@gnarfgnarf4004
@gnarfgnarf4004 3 жыл бұрын
WinAPI is like the Stone Age compared to Qt.
@GeorgeTsiros
@GeorgeTsiros 3 жыл бұрын
@@gnarfgnarf4004 i, too, enjoy increasing the size of my program from some kilobytes to 100+ MB just by including one library
@gnarfgnarf4004
@gnarfgnarf4004 3 жыл бұрын
@@GeorgeTsiros Nonsense. I ship a complete graphics app, 750KLOC, PDF, XLSX, XML etc. at 27MB. You're doing it wrong.
@whoeverofhowevermany
@whoeverofhowevermany 3 жыл бұрын
"I've never used a Mac." Hey I'm finally subscribing.
@___xyz___
@___xyz___ 3 жыл бұрын
I... don't know what to say
@whoeverofhowevermany
@whoeverofhowevermany 3 жыл бұрын
@@___xyz___ if you don't know what to say then I don't know why you felt the need to say it
@___xyz___
@___xyz___ 3 жыл бұрын
@@whoeverofhowevermany the need to say I didn't know what to say came from knowing that saying I'm not knowing is better knowing than explicitly saying doubtfully that being optimistic about ignorance is ignorant
@whoeverofhowevermany
@whoeverofhowevermany 3 жыл бұрын
@@___xyz___ welcome to the core logic of language
@___xyz___
@___xyz___ 3 жыл бұрын
@@whoeverofhowevermany welcome to the world of computers :-)
@Argletrough
@Argletrough 4 жыл бұрын
I have had a dip into GTK and even xcb before, and I must say I am very pleased by the tiny amount of boilerplate code needed to create a wxWidgets program. Thank you!
@javidx9
@javidx9 4 жыл бұрын
Cool!
@mikefochtman7164
@mikefochtman7164 Жыл бұрын
Just getting back into C++ after a long hiatus. I remember using MFC way back in 'the day' and have spent a bit of time exploring the current GUI landscape when I stumbled across your channel. Thank you so much for this video, it presents wxWidgets at a level I can appreciate. So I've already started the 'batch build' on this sdk and looking forward to using it.
@kuhluhOG
@kuhluhOG 5 жыл бұрын
12:36 Vulkan, hmm, are we going to see something about Vulkan at some point?
@Weezarvil
@Weezarvil 5 жыл бұрын
I am excited if this happen. I am learning vulkan and making my own wrapper while at it, I learn and develop.
@yogxoth1959
@yogxoth1959 4 жыл бұрын
That would be awesome!
@compaqdisc6362
@compaqdisc6362 5 жыл бұрын
Compiling on (Arch) Linux requires gcc, wxgtk3, and wxgtk-common. run: "g++ cApp.cc cMain.cc -Wall $(wx-config --cxxflags --libs) -o App"
@Nathan-rj1bd
@Nathan-rj1bd 2 жыл бұрын
I clicked build right as he said it He says "But before you do and this is very important" Gave me a good laugh. Just learned openCV for object recognition on C++ for my internship and using this video to make my GUI. Thanks!
@tomkirbygreen
@tomkirbygreen 5 жыл бұрын
Fab video as always sir. Don’t know how you manage to hit the sweet spot but I totally dig the level of detail you cover whilst still keeping it accessible.
@FilSapia
@FilSapia 4 жыл бұрын
I always really liked QT as a framework, I'm mainly a C# programmer but I felt quite a home in QT as the bindings are easy and just make sense. Not to mention the documentation is excellent which cannot be said for many C++ frameworks :)
@papasmurf9146
@papasmurf9146 2 жыл бұрын
I've used Qt framework for years and just recently got a bug up my nose to try out other frameworks. I haven't seen anything yet that convinces me to move away from Qt. The amount of "plumbing code" to get up and running in Qt seems less than for other frameworks. I admit that alarm bells went off when I saw "windows ID" being used with the wxFramework. Visual Studio v6's resource IDs were the bane of my existence for trying to share code between projects. I've never had issues with sharing Qt code between projects (which does not have resource/window IDs).
@javidx9
@javidx9 2 жыл бұрын
They're optional in wx, sometimes useful, but mostly you bind to the control directly now. Well for last 10 years anyway.
@banshee10000
@banshee10000 5 жыл бұрын
I've been using Qt for cross platform Windows and Linux C++ development for nearly 12 years now (C++ & Qt self tough) but I'm always open to learning about other available technologies. Going to try and develop for macOS next once I get hold of one.
@v19torrent4
@v19torrent4 3 жыл бұрын
That hit hard when he said build times are extremely long for people who work on massive projects. You, sir, are correct. I work as a full time software developer. We have thousands of lines of code and hundreds of files. Build times are upwards of 40 minutes for some team members!
@aungthuhein007
@aungthuhein007 Жыл бұрын
BIIIIGGGGG THUMBS UP! I've always been on the lookout for a channel exactly like this! KZfaq has blessed me today!
@yper51
@yper51 5 жыл бұрын
Just in time i needed for my work! ty
@javidx9
@javidx9 5 жыл бұрын
Good stuff!
@SapphFire
@SapphFire 5 жыл бұрын
Nice tutorial. Glad to see how other frameworks do it since I've only used qt quick
@doubledroppedhere
@doubledroppedhere 2 жыл бұрын
I'm a complete new person in software. Just getting done with a transfers. And THANK YOU SO MUCH FOR THIS VIDEO. I feel like whenever I ask people "What's next after the backend of my projects are pretty solid?" they give me either a very vague answer or an answer that goes way above my skill level. And this video I feel like I get a good crash course on the next step where I know what to learn on. This might be an older video so maybe this is outdated but for my inexperienced self its a great jumping off point.
@hpeterh
@hpeterh 3 жыл бұрын
I think it is worth to mention "DialogBlocks" here, a GUI Builder for wxWidgets, written by Julian Smart one of the leading wxWidgets developers. It creates vcxproj files that can be opened directly by Visual Studio and as well makefiles for gcc. Even if you do not buy it, and not use it for program generation, it is very useful because it has inbuilt extensive up-to-date information about wxWidgets and help, for example for each control and its parameters you get help about usage and portability.
@mitet101
@mitet101 3 жыл бұрын
For anyone wondering why evt returns errors: make sure you used an ampersand (&), not a dollar sign ($) in the declaration =) At least in my case, that was the only problem.
@godDIEmanLIVE
@godDIEmanLIVE 5 жыл бұрын
This channel and the Cherno = love.
@nic...9551
@nic...9551 4 жыл бұрын
This is extremely useful, thank you. I i like how you break down what you're doing, and also explain why. I find that too often tutorials, simply inform us which buttons to click without really providing any detail. Thanks again!
@NVRMTmotion
@NVRMTmotion 4 жыл бұрын
Pure gold! I've used a bit of tkinter in python and this felt very familiar. What a great jumping off point for more complex c++ projects!
@ksawery6568
@ksawery6568 5 жыл бұрын
What an amazing tutorial, exactly what I needed. Many thanks!
@javidx9
@javidx9 5 жыл бұрын
A heads up about the next community showcase video, if you want some of your projects featured in a video get them ready! I'll release submission details in due course. Im also looking to fill the onelonecoder.com website with a gallery of submissions.
@anajand
@anajand 3 жыл бұрын
Great video! Thanks. Perhaps someone already commented that VC15 is Visual Studio 2017. But just in case, here is the list of wx solution files (as of wx version 3.1.4): wx_vc16.sln: Visual Studio 2019 wx_vc15.sln: Visual Studio 2017 wx_vc14.sln: Visual Studio 2015 wx_vc12.sln: Visual Studio 2013 wx_vc11.sln: Visual Studio 2012 wx_vc10.sln: Visual Studio 2010
@russellabraham9208
@russellabraham9208 4 жыл бұрын
Great video thank you, I've spent the last 2-3 days looking for a good explanation of the concept, you managed to clear up some confusion!
@BulkiestSplash2
@BulkiestSplash2 5 жыл бұрын
Not all Heros wear cape! keep this compartment of wisdom!!
@serijas737
@serijas737 4 жыл бұрын
"I recently had a look into Java - and that's become a complete mess." LOL
@aldrinaldrin4618
@aldrinaldrin4618 5 жыл бұрын
Wow.. you've uploaded this just in time. I'm trying to learn wxwidgets just this month for my little kiddy project.
@BryonAbbott
@BryonAbbott 4 жыл бұрын
Thanks for spending the time on this, I found it very useful and will be watching the sequel, also looking to compile this on WSL and Raspberry PI to see how it looks.
@javidx9
@javidx9 4 жыл бұрын
Thanks Bryon, I must confess ive not tried wx on an rpi before, I assume it should be ok, but im curious now :D
@manbirjudge8415
@manbirjudge8415 3 жыл бұрын
Qt and Wx are also one of the best GUI development frameworks for Python as I am originally a Python Developer (not professional but pro) and I am learning C++ for GUI development because I think Python is not for GUI and I learned that C++ is also not for GUI but if I have learned it I will stick to as I am stuck to Python. Long story short: Qt and Wx are also one of the best GUI development frameworks for Python.
@Schcarraffone
@Schcarraffone 2 жыл бұрын
yes and if you add something like wxwidgetsbuilder or dialogblocks you get to a proototype even faster... (or qtcreator for qt)
@alanjaldred
@alanjaldred 4 жыл бұрын
Error 111: Out of coffee. Continue with tea bags? (Y/N)
@javidx9
@javidx9 4 жыл бұрын
Absolutely. In fact, coffee is what one should drink only once they have has depleted their tea bags.
@Tornado11PL
@Tornado11PL 4 жыл бұрын
Then you have error 418 ;)
@KyleLuce
@KyleLuce 3 жыл бұрын
I was writing test tools at an internship using wxwidgets, GTK and QT. That was 13+ years ago... I'm floored that these are still the defacto best choices for a portable GUI in C++.
@_ifrit
@_ifrit 4 жыл бұрын
Im currently relearning everything from before enlistment and really enjoy your videos. Thank you !
@javidx9
@javidx9 4 жыл бұрын
Hey that's great Kurijomo!
@razmen6341
@razmen6341 4 жыл бұрын
This is my forst time in this channel. As soon I heard "I never used a Mac before" I clicled that subscribe button.
@jscorpio1987
@jscorpio1987 4 жыл бұрын
What is a “forst” and a “clicled”? And bravo! 👏 Do you feel like one of the cool kids now that you’ve announced your baseless hate for people that don’t share your platform preference?
@fuadcs22
@fuadcs22 3 жыл бұрын
A small suggestion for you: Use time stamps for the topics.
@takeyoshix
@takeyoshix 2 жыл бұрын
"But I am well aware that for just some of us that love C++ too much, that's the language we're going to stick with..." THANK YOU. In 25 year I have been using C++, I cannot remember anyone (besides me) who would speak out like this in defense of one's preferences. I always have to hear people complaining about everything and why any other language (or even scripting language like Python) should be used over C++. Your phrase is spot on.
@colinmaharaj
@colinmaharaj 4 жыл бұрын
I use the competing framework in a product called Delphi and C++ Builder called the VCL (Visual component library). It originated from a company called Borland. Eventually Microsoft bought out the guy who designed Delphi from Borland and he invented C#. Finally MS came back to Borland and bought a few more technologies to complete the C# and Visual integration. After 20 years, I still use the VCL which now includes ports to Linux. Borland eventually went under, however the technology division of Borland went around the block a few times and settled in a company called Embarcadero. They still support all the dev frameworks including a visual drag and drop C++ development environment, the VCL framework, and support for PC, mac, phones, and Linux. Embarcadero C++ product is called C++ Builder and any looking for a mature stable, environment for Visual development will be presently surprised. You may say, it may feel like C# development, but it all originated with Borland and the VCL. Remember this is a native code compilation based on CLANG in Windows since 2014.
@colinmaharaj
@colinmaharaj 4 жыл бұрын
Ok, so practically all of these steps with the wxWidgets, up to min 26, can be done graphically without writing a line of code in Delphi and in C++ Builder. Remember, it also generates native code that can be a standalone EXE.
@clydx1239
@clydx1239 3 жыл бұрын
"and I recently had a look it into Java and that has become a complete mess." -Java left the chat
@sweetberries4611
@sweetberries4611 5 жыл бұрын
I expected something different but that's quite good too
@MadGeekGirl
@MadGeekGirl Жыл бұрын
I love the way you explain the reasoning behind things. Thank you and I hope you keep making videos.
@dangtu-work
@dangtu-work 5 жыл бұрын
About the compiling part. On the real project we would divide it into various packages, also call modules. By doing so, we only have to compile a certain package that we have modified; those packages aren't modified, stay right where they are. With this way, thing are much faster then compile everything. This's also applied to Linux because its softwares are managed in package. So when we build an app, it's actually we just build the app core. The other packages can be download through package manager system. That's why it faster then compile everything.
@Henrik0x7F
@Henrik0x7F 5 жыл бұрын
If you make a Linux program and rely on the native package manager you are a madman
@dangtu-work
@dangtu-work 5 жыл бұрын
@@Henrik0x7F can you tell why?
@hamolicious2387
@hamolicious2387 4 жыл бұрын
Not going to lie, this was probably the first time I actually made a cup of coffee as per a KZfaqr's request
@flamendless
@flamendless 5 жыл бұрын
Please continue the c++ and lua series
@atrumluminarium
@atrumluminarium 5 жыл бұрын
YES
@javidx9
@javidx9 5 жыл бұрын
I probably will in the run up to the next Car Crime City video, which btw part #2 featured some more lua/C++ integration if you didnt catch it.
@claudioabado3317
@claudioabado3317 3 жыл бұрын
Wow! You really take us "by the hands" which is a good thing for me for I have little c++ experience.
@KaaBockMehr
@KaaBockMehr 5 жыл бұрын
a very lovely tutorial. your structure is as it should be- some historical context, some theory, how to use it and a very nice example at the end. i whish some of the practical lessons at university were as good as your tutorials.
@javidx9
@javidx9 5 жыл бұрын
That's very kind of you to say, thanks very much!
@VLS-Why
@VLS-Why 5 жыл бұрын
Hahaha several of the projects at my work are 1 million+ LoC. Just glad we have beefy computers and build automation
@javidx9
@javidx9 5 жыл бұрын
lol, yeah, and hopefully a good build manager looking after it all! You have my sympathies! (love the name btw XD)
@VLS-Why
@VLS-Why 5 жыл бұрын
@@javidx9 Thankfully management understands having a reliable software ecosystem, so we have tons of pipelines to check our work before anything is merged and alert us to any issues. All of our build servers are cloud based though, so if we get disconnected we have to call up and yell at Microsoft, Amazon, Google ect. Love the channel! (Although I am partial to Linux development :) )
@Damaniel3
@Damaniel3 5 жыл бұрын
We have one that's just over 3M lines of code, mainly in C++. It also uses Qt, which isn't that great from a compile time standpoint (though I'm not sure how much faster a wxWidgets version of the codebase would compile). Like you said though, powerful build servers and a Jenkins instance to manage build automation works wonders.
@RatoCavernaBR
@RatoCavernaBR 5 жыл бұрын
There is no GUI builder that helps even more?
@rafae111111
@rafae111111 5 жыл бұрын
Wxformbuilder is a great tool to use.
@javidx9
@javidx9 5 жыл бұрын
There is, but i think its important to know what the gui editor actually does before blindly using it.
@RatoCavernaBR
@RatoCavernaBR 5 жыл бұрын
@@javidx9 You're right other wise there is no way to do dynamic content on the gui but I've tried to use a builder in the past and at the time the documentation was so hard to find that I give up and switch to Java and that was so easy to find anything on the internet.
@pperez1224
@pperez1224 4 жыл бұрын
1 -There is a way to tell Java to use native OS widgets instead of similar look-alike widget ( widget also make sense if you want to provide a normalized interface across OSes ) 2 -Another very usefull thing C++ lacks ( without using quirks ) are reflection API which make generating data driven forms in Java MUCH easier and less error prone than in C++ 3 - Unlike with C++ , you WONT HAVE to recompile your user interface for every single target OSes. With java you will pass the same library ( jarfile ) 4- Java has a built-in UI library so you can produce widgets you can share.
@javidx9
@javidx9 4 жыл бұрын
Yeah... I dont disagree with you, but it's still a mess.
@vehujee4547
@vehujee4547 3 жыл бұрын
Wow, thanks for the great tutorial. Your style of explaining makes it easy to understand things even without any previous knowledge.
@tannerbarcelos6880
@tannerbarcelos6880 5 жыл бұрын
I looked at some stack overflow example code for GUI stuff. My eyes burned. I cried. I ran away. 😂
@amaury_permer
@amaury_permer 5 жыл бұрын
Weakness Disgusts Me hahaha JK
@YM-kn1qz
@YM-kn1qz 5 жыл бұрын
2:20 😂😂😂 3 million years ago
@smnbgn
@smnbgn Жыл бұрын
Thanks for the video. My professor told me to code some algorithms in C++, so I started to learn wxWidgets for the GUI. Now I will go read the official book..
@BlueJayBonsai
@BlueJayBonsai 5 жыл бұрын
I’m loving this series! 👍 Can’t wait for the next video.
@doot2359
@doot2359 4 жыл бұрын
"Let's make mines sweper" I see you are a mind reader !
@OriginalUnknown2
@OriginalUnknown2 2 жыл бұрын
Ok, I'm stopping at 26:40 - I don't get any windows showing up. Everything compiles fine, but nothing actually shows when I run the program... I've googled all I could but I can't find an answer... For Simplicity's sake, everything currently in this project is character for charter the same as @javidx9 's. Does anyone have any ideas why? I'm using Visual Studio 2019, with the latest wx sln being wx_vc16. Is it perhaps a version issue? While I wait for a response, I'll install VS16 to be safe and I'll update this comment based on the results. Update: So there is no VS 2016 (as I thought) so I tried both VS2015 and VS2017 - no luck. The program itself definitely runs, if I launch the .exe directly, while nothing shows up, not even in task manager, I can kill the process using taskkill -> "SUCCESS: The process "" with PID 2536 has been terminated.", so it runs, but won't show anything...
@DerMigi
@DerMigi 2 жыл бұрын
I have the same problem. Everything builds but I can't see a window.
@javidx9
@javidx9 2 жыл бұрын
Do you Show()?
@DerMigi
@DerMigi 2 жыл бұрын
@@javidx9 Smh KZfaq keeps deleting my comment? Yes I did. Exactly as in your code.
@DerMigi
@DerMigi 2 жыл бұрын
Okay wow? The error was, that my virtual function was onInit() in my headerfile aswell as in my .cpp file. But you had OnInit(). Why does it make a difference tho? Is it like an interface? and wxApp only has OnInit which we then implement?
@javidx9
@javidx9 2 жыл бұрын
Yes exactly. c++ is case sensitive, and OnInit is defined by a base class to be overridden. You can identify typos like this by suffixing the "override" keyword to the end of your function definition.
@georgefratila6773
@georgefratila6773 3 жыл бұрын
Hi ! I have to admitt that I like very much how you present all these programming subjects. It is on top of my favourite channels !
@DepressedCapitalist
@DepressedCapitalist 3 жыл бұрын
This might be too complex to grasp for novice programmers but C# is the third of A and if put on the bass register it can also form a diminished chord which could serve as passing to another diatonic one.
@Schcarraffone
@Schcarraffone 2 жыл бұрын
and by the way there is even d...
Programming a Wireless Robotic Arm
53:16
javidx9
Рет қаралды 77 М.
BEST WAY to make Desktop Applications in C++
26:00
The Cherno
Рет қаралды 905 М.
ПОМОГЛА НАЗЫВАЕТСЯ😂
00:20
Chapitosiki
Рет қаралды 28 МЛН
ISSEI & yellow girl 💛
00:33
ISSEI / いっせい
Рет қаралды 21 МЛН
Box jumping challenge, who stepped on the trap? #FunnyFamily #PartyGames
00:31
Family Games Media
Рет қаралды 33 МЛН
黑天使遇到什么了?#short #angel #clown
00:34
Super Beauty team
Рет қаралды 43 МЛН
Bjarne Stroustrup - The Essence of C++
1:39:11
The University of Edinburgh
Рет қаралды 1,2 МЛН
What Are Pointers? (C++)
41:55
javidx9
Рет қаралды 561 М.
The standard library now has all you need for advanced routing in Go.
13:52
Back To Basics: C++ Containers
31:41
javidx9
Рет қаралды 181 М.
Forbidden C++
33:07
javidx9
Рет қаралды 1 МЛН
BEST GUI TOOLKITS for C++ | Sciber
16:04
Sciber
Рет қаралды 107 М.
31 nooby C++ habits you need to ditch
16:18
mCoding
Рет қаралды 767 М.
ПОМОГЛА НАЗЫВАЕТСЯ😂
00:20
Chapitosiki
Рет қаралды 28 МЛН