76 Tutorial Topics

Remove Filter
Member Avatar for
Member Avatar for dimitrilc

## Introduction ## In the [last Selenium tutorial](https://www.daniweb.com/programming/software-development/tutorials/538447/basic-interactions-with-web-elements-in-selenium), we learned how to perform basic actions such as clicking and sending keystrokes. In this tutorial, we will learn how to do another action, which is the scrolling action. ## Goals ## At the end of the tutorial, you would have learned: …

Software Development spring-framework
Member Avatar for Klint
2
160
Member Avatar for dimitrilc

## Introduction ## Welcome to part 2 of the Selenium scrolling tutorial. Please follow the directions in [part 1](https://www.daniweb.com/programming/software-development/tutorials/538448/perform-scrolling-actions-in-selenium-part-1) to set up your project. In part 1, we learned how to let Selenium decide how it wants to scroll to elements. In this part 2, we will learn about a …

Software Development spring-framework
Member Avatar for Klint
2
257
Member Avatar for dimitrilc

## Introduction ## When working with Selenium, you might have run into a situation where you have to wait for long-running tasks to complete before you can interact with elements. Fortunately, Selenium has support for such situations via its many *waits* API. In this tutorial, we will learn how to …

Software Development spring-framework
2
91
Member Avatar for dimitrilc

## Introduction ## When creating a Selenium test, it is common for developers to want their scripts to take the same actions as a real human user would take. These action often includes clicking on elements or inputting text data into forms. In this tutorial, we will learn how to …

Software Development spring-framework
1
99
Member Avatar for dimitrilc

## Introduction ## While **Functional Interfaces** and **Function Types** are used to declare the types of a function, **Function Literals** create the actual implementations of these types. In this tutorial, we will learn what Kotlin **Function Literals** are and how to create them. ## Goals ## At the end of …

Software Development java
Member Avatar for Klint
2
209
Member Avatar for dimitrilc

## Introduction ## Whenever I want to express method parameters, return type or variables as a *method* in Java, I often find myself having to do a bit of work: 1. If I cannot remember which pre-made **functional interface** to use, then I will have to look up the list …

Software Development java typescript
1
175
Member Avatar for dimitrilc

## Introduction ## When working on Java applications, it is very likely that you will run into JDBC at some point. While you are unlikely to have to work directly with JDBC when using frameworks, it is still important to know how the connection is established and how queries are …

Software Development java
Member Avatar for dimitrilc
2
181
Member Avatar for Reverend Jim

## Introduction I recently bought a new laptop. Since I haven't used VB.Net in years (nothing but Python now) I did not install Visual Studio. That meant rewriting all my VB apps in Python/wxPython. One of my most often used apps was a shell extension I wrote to add a …

Software Development python
Member Avatar for Reverend Jim
2
431
Member Avatar for dimitrilc

## Introduction ## When following tutorials on Daniweb, you might have run into one that requires knowledge about **Dependency Injection** as a prerequisite. People might also sometimes use the term **Inversion of Control** interchangeably with DI. These terms are related to one another, but they are not the same. In …

Software Development java
2
240
Member Avatar for dimitrilc

## Introduction ## Java annotations are often used to provide extra information for compilers, IDEs, and build tools. The extra information is often used to enhance the development cycle, such as reducing boilerplate, eliminating repetitive code, or warning against unsafe usage or mistakes. This tutorial aims to teach you the …

Software Development java typescript
2
139
Member Avatar for dimitrilc

## Introduction ## When working on Android with Kotlin, you might have ran into property delegates on a few occasions, such as `activityViewModels()` from `androidx.fragment.app` or `remember()` from `androidx.compose.runtime`. In this tutorial, we will learn what property delegates are and how to create them ourselves. ## Goals ## At the …

Software Development android-development
3
168
Member Avatar for dimitrilc

## Introduction ## When localizing your application, `ResourceBundle` can be a great way to load Strings from different locales. The only concrete implementation of ResourceBundle is `PropertyResourceBundle`, which allows us to load static Strings from a text file. Because `.properties` is a common file extension used for ResourceBundles, creating ResourceBundle …

Software Development java
2
242
Member Avatar for dimitrilc

## Introduction ## Junit is a popular framework to create tests for Java applications. Although individual unit tests are mostly straightforward, integration and functional tests are a little bit more involved because they usually require multiple components working together. For that reason, understanding the life cycle of Junit tests can …

Software Development java
2
252
Member Avatar for dimitrilc

## Introduction ## When collecting a stream, the `groupingBy()` Collector(`java.util.stream.Collector`) can be used to put data into different groups based on specified conditions. `groupingBy()` is a little bit more complicated to use than [partitioningBy()](https://www.daniweb.com/posts/jump/2280662) because the key can be of any type, whereas with `partitioningBy()`, the keys must be of …

Software Development java
2
145
Member Avatar for dimitrilc

## Introduction ## Whenever we want to modify numbers from multiple threads running concurrently, such as modifying a counter, one of the best options is to use the AtomicX classes. The most basic numeric atomic classes are AtomicInteger and AtomicLong. In this tutorial, we will learn how to use the …

Software Development java multithreading
2
126
Member Avatar for dimitrilc

## Introduction ## If you are a Java developer coming to Kotlin, you might have wondered how to use a language construct that is similar to the try-with-resource statement in Java to automatically close Autocloseable/Closeable resources for you. Luckily, Kotlin provides the inline extension function `use()` that provides similar functionality …

Software Development java
2
357
Member Avatar for dimitrilc

## Introduction ## In Java, a common way to express a type that is a combination of two or more types is to just create an interface that extends the other types. The problem with this approach is that your code might be littered with interface declarations, polluting your code …

Software Development java
2
195
Member Avatar for dimitrilc

## Introduction ## In Kotlin, we can extend classes without subclassing via extension functions and extension properties. This feature is useful whenever we want to extend 3rd party libraries or final classes. In this tutorial, we will learn what extension functions and extension properties are, and how to create our …

Software Development
2
301
Member Avatar for dimitrilc

## Introduction ## `launch()` and `async()` are two of the most common coroutine builders to use in Kotlin, but they are somewhat different in usage. `launch()` returns a `Job` object, which can be used to cancel or perform other operations on the underlying coroutine. If our coroutine lambda returned a …

Software Development
3
368
Member Avatar for dimitrilc

## Introduction ## In this tutorial, we will look at the RxJava `mergeWith()` and `concatWith()` operators. Amongst others, they are used to combine Observables together. All of the RxJava operators have ambiguous names, and behave differently, so let us take a look at 2 operators, `mergeWith()` and `concatWith()`, to see …

Software Development java
3
1K
Member Avatar for dimitrilc

## Introduction ## RxJava 3 includes 5 core classes: 1. Flowable, 2. Observable, 3. Single, 4. Completable, 5. Maybe. This tutorial aims to teach the basic concepts behind Observable, which serves as a foundation for understanding the other 4 classes. ## Goals ## At the end of the tutorial, you …

Software Development java
3
2K
Member Avatar for dimitrilc

## Introduction ## With coroutines in Kotlin, we are able to execute suspending functions without blocking the current thread. By default, most coroutine builder functions use the `Dispatchers.Default` context, but it is also possible to use other implementations of `CoroutineContext`. In this tutorial, we will learn about the 2 `CoroutineDispatchers`: …

Software Development multithreading
3
156
Member Avatar for dimitrilc

## Introduction ## The `java.nio.file.Files` class includes many convenient methods to read file attributes, but sometimes these convenient methods just are not enough to meet our needs. In this tutorial, we will go over 5 ways to use the `Files` class to read file attributes so you can choose the …

Software Development file-system java
3
301
Member Avatar for dimitrilc

## Introduction ## When working with an application with a global user base, there is usually a need to display text, numbers, currency, date, and time in multiple localized formats. For example, the **en-US** (*English-USA*) version of the date September 22, 2021 is written as 22 сентября 2021 г. when …

Software Development finance java
3
215
Member Avatar for dimitrilc

## Introduction ## Although not included in the headlines, the release of JDK 17 also added 3 sets of new methods to the class `java.lang.Process`: 1. `inputReader()` to read from stdout. 2. `inputWriter()` to write to stdin. 3. `errorReader()` to read from stderr. In this tutorial, we are going to …

Software Development cybersecurity java python
3
2K
Member Avatar for dimitrilc

## Introduction ## In Java 8, `@Repeatable` was introduced and this is the recommended way to create repeating annotations. We still have to create a holder Annotation(*annotation that holds an array of other annotations*), but we no longer have to declare the holder Annotation at the callsite. This tutorial aims …

Software Development java
3
300
Member Avatar for Reverend Jim

**Requires:** 1. Python version 3.8 or newer 2. wxPython version 4.0 or newer 3. exif module 4. Windows with NTFS file system To ensure you have the required packages please run the following 1. python -m pip install --upgrade pip 2. pip install exif 3. pip install wxPython I have …

Software Development python
Member Avatar for kimwel
4
1K
Member Avatar for dimitrilc

## Introduction ## Java 15 introduced Text Blocks. The main reason behind Text Blocks is that programmers can write multiline strings without having to specify escapes for the most common scenarios. ## Goals ## At the end of this tutorial, you would have learned: 1. How to store multiline String …

Software Development java
Member Avatar for JamesCherrill
2
165
Member Avatar for dimitrilc

## Introduction ## Before Java 8, methods had to throw an exception or return `null`, with neither of which approaches were perfect. Optional, OptionalInt, OptionalLong, and OptionalDouble were introduced in Java 8 to represent values that might possibly be `null`. Optionals have two internal states, **empty** or **present**. An Optional …

Software Development java
Member Avatar for JamesCherrill
2
2K
Member Avatar for dimitrilc

## Introduction ## There are many ways to design secure Java objects. In this tutorial, we are going to learn how to create secure Java objects by understanding **Accessibility**, **Extensibility**, and **Immutability**. ## Goals ## At the end of this tutorial, you would have learned: 1. Understand how and why …

Software Development cybersecurity java
Member Avatar for JamesCherrill
2
177
Member Avatar for dimitrilc

## Introduction ## In this tutorial, we will focus on how to manage IO permissions to read, write, and delete local files using the `SecurityManager` class. ## Goals ## At the end of this tutorial, you would have learned: 1. What policy files are and how to use them. 2. …

Software Development cybersecurity java
2
333
Member Avatar for Reverend Jim

# Comparing two videos side by side I have been creating walk-through videos on the cheap by just wandering through an area with my little Sony camera. Lacking a steady-cam I just try to hold the camera as steady as possible. Fortunately, with the proper (free) tools I can still …

Software Development python video
Member Avatar for Reverend Jim
1
1K
Member Avatar for dimitrilc

## Introduction ## Java 14 was released with a new type of expression called Switch Expression. Its syntax is similar to that of the Switch Statement, with a few differences. In this tutorial, we will walk through concepts related to the Switch Expression and learn how to use it. ## …

Software Development java
3
131
Member Avatar for dimitrilc

## Introduction ## In this tutorial, we are going to learn how to create a Java module by hand. ## Goals ## At the end of this tutorial, you would have learned: 1. What a `module-info.java` file is. 2. How to compile a module. 3. Describing a module. ## Prerequisite …

Software Development java
2
136
Member Avatar for dimitrilc

## Introduction ## This tutorial introduces the `CyclicBarrier` class and teaches you how to use it. ## Goals ## At the end of this tutorial, you would have learned: 1. How to use `CyclicBarrier` to synchronize tasks across multiple threads. ## Prerequisite Knowledge ## 1. Intermediate Java. 2. Basic knowledge …

Software Development java multithreading
3
172
Member Avatar for dimitrilc

## Introduction ## `partitioningBy()` collects a `Stream` into a `Map`. In this tutorial, we will compare the two different `partitioningBy` methods and learn how to use them. ## Goals ## At the end of this tutorial, you would have learned: 1. What `Collectors.partitioningBy` does and how to use it. ## …

Software Development java
3
231
Member Avatar for dimitrilc

## Introduction ## Based on the 2020 Java Ecosystem survey from Jetbrains, 75% of Java developers are still using JDK 8. JDK 11 introduces `HttpClient`, which replaces the legacy `HttpURLConnection` API. For this tutorial, we will build a `HttpClient` that consumes the free Cat Facts API. ## Goals ## At …

Software Development api java
Member Avatar for JamesCherrill
3
480
Member Avatar for dimitrilc

## Introduction ## This tutorial teaches you how to implement the Type-safe Builder pattern using Kotlin. This pattern allows developers to create declarative and concise DSLs. Our implementation will be a Burger Builder that enables our users to create Burger objects expressively. ## Goals ## At the end of the …

Software Development
2
436
Member Avatar for AndreRet

[ATTACH=RIGHT]20145[/ATTACH][B]Building your first DYNAMIC Database application. This is Part One of a four part tutorial on how to install and use your database, Part Two will teach you how to build successful connections and Part Three will teach you how to build database interaction and management of your databases.[/B] There …

Software Development mysql visual-basic
Member Avatar for twexpresscars
1
2K
Member Avatar for Reverend Jim

Python-wxPython Tutorial This tutorial will take you through the basics of wxPython. ##Introduction: Let's face it. I am a dinosaur. I got my computer science degree in the mid 70s. And it won't be long before **I** am in **my** mid 70s. So why am I trying to learn Python? …

Software Development python
Member Avatar for Reverend Jim
10
12K
Member Avatar for Reverend Jim

vb.net 2010 Windows Pro 7 ## Create a Video Library with an Embedded Windows Media Player ## I have close to 400 video clips in my home movie library. In order to quickly locate any given video I have added certain words into the file names. Even so, locating specific …

Software Development microsoft vb.net
Member Avatar for Reverend Jim
1
3K
Member Avatar for rproffitt

Yes, you've been told it's dead, gone and to move off this old beast of a system from 1998 but here you are, tasked with fixing an old legacy app so let me share that I've been there and how I got around some of the issues. These are: 1. …

Software Development visual-basic windows-10
Member Avatar for Julius_5
1
4K
Member Avatar for hefaz

Hi guys! i think this is usefull, a lot of the users have problems with .Net Framework installation, Error code: HRESULT 0xc8000222 Do these to solve: a: Click Start > Run. b: Type cmd and press Enter. Please run the following command in the opened window. net stop WuAuServ c: …

Software Development
0
462
Member Avatar for Bob

[B]Intro[/B] This tutorial provides a brief introduction to the random number functions that come as part of the C++ standard library, namely rand() and srand(). [b]rand() and RAND_MAX [/b] The C++ standard library includes a pseudo random number generator for generating random numbers. In order to use it we need …

Software Development c++
Member Avatar for JamesCherrill
3
53K
Member Avatar for xrjf

Have you ever wanted to develop a math parser and evaluator? Are you in such a quandary or just have curiosity or interest in the matter? If so, you may download the complete source version 8.3.48 or later, but be warned there is almost no comment; or instead, follow versions …

Software Development mathematics vb.net
Member Avatar for Xavier_5
0
2K
Member Avatar for Reverend Jim

Sometimes there are functions you want your program to perform in the background while you are busy doing other things. For example, if you are building a picture viewer application you may not want to wait until thumbnails are generated before getting on with the business of viewing the pictures. …

Software Development html-css vb.net
Member Avatar for Reverend Jim
3
4K
Member Avatar for BustACode

Note: In Python 2.7 use: `from __future__ import print_function` to use examples. In Python, by default, the key and value pairs in a dictionary are stored as hashes, therefore dictionaries do not retain the order in which values were added, and cannot be ordered. v_Dict ={} v_Dict["First"] = 99 v_Dict["Second"] …

Software Development python
Member Avatar for DragonMastur
1
480
Member Avatar for John A

User input/output is a key component in the programs you write, yet most online tutorials just provide a quick-and-dirty method of grabbing data. In other words, it works right up until the point the user does something unexpected. In this tutorial you will learn how to avoid the common mistakes …

Software Development c++
Member Avatar for Khawaja Ghulam
11
7K
Member Avatar for AutoPython

!USING PYTHON 3.1! Hello DaniWeb! Today I'm going to teach you a cool variable trick that I learned. So here's an example: [CODE] a, b, c = input('?x?x?: ').split('x') [/CODE] Now let's input something like: [CODE] >>> a, b, c = input('?x?x?: ').split('x') ?x?x?: 1x2x3 [/CODE] Now, variable 'a' is …

Software Development python
Member Avatar for 111100/11000
6
602
Member Avatar for AndreRet

**Modifications Required for VB6 Applications to Work on Vista/7** Thanks to Hassan Basri in VBForums **Application Changes** - Remove SendKeys calls and replace them with API code. - Use the HKEY_CURRENT_USER in the registry for the settings of your application. - Do not write to HKEY_LOCAL_MACHINE. - If you are …

Software Development microsoft visual-basic
Member Avatar for hefaz
2
5K

The End.